Brad, What version of DBD::ODBC are you using? If you are using DBD::ODBC 0.28 from ActiveState, then I suggest upgrading to the latest (which has a PPM file at ftp://ftp.esoftmatic.com/pub/outgoing/DBI
Please upgrade your DBI too, as you must use the version I have uploaded there. Regards, Jeff > > Scenario: > > I am using the following code to update an Access database. The fields > case_notes1...case_notes4 are MEMO fields. Sometimes, I have no > problem whatsoever. Other times, I get the following error: > > DBD::ODBC::st execute failed: [Microsoft][ODBC Microsoft Access > Driver]Invalid precision value (SQL-S1104)(DBD: > _rebind_ph/SQLBindParameter err=-1) at c:/i-networks/soar/cgi- > bin/collab_gatekeepers_channel_open.pl line 930. > > The code: > > my $dbh = DBI->connect("dbi:ODBC:gatekeepers") || die DBI::errstr; > my $sth = $dbh->prepare("UPDATE gatekeepers > SET caller_last_name=?, > caller_first_name=?, > caller_phone_areacode=?, > caller_phone_prefix=?, > caller_phone_suffix=?, caller_anonymous=?, referral_source=?, > referral_source_other=?, > caller_callback=?, > client_first_name=?, client_last_name=?, > client_soc_security=?, > client_address=?, > client_city=?, client_state=?, > client_zipcode=?, client_zipfour=?, > client_phone_areacode=?, client_phone_prefix=?, > client_phone_suffix=?, > client_gender=?, > client_age=?, client_race=?, > composition=?, composition_other=?, > referral_reasons=?, directions=?, > outcomes_mental_health_agency=?, > outcomes_crisis_services=?, outcomes_senior_ir=?, > > outcomes_home_and_community_services=?, > outcomes_home_health_agency=?, > outcomes_adult_protective_services=?, > outcomes_medical_facility=?, > outcomes_medical_services=?, > outcomes_involuntary_psychiatric_hospital=?, > > outcomes_voluntary_psychiatric_hospital=?, > outcomes_detoxification_facility=?, outcomes_law_enforcement=?, > outcomes_other1=?, outcomes_other2=?, > outcomes_other3=?, outcomes_other4=?, > refused_face_to_face=?, > refused_recommended_services=?, refused_will_return=?, > unable_to_contact=?, > refusal_comments=?, > other_actions_comments=?, caregiver_stress=?, condition_of_home=?, > economic_problems=?, > medication_problems=?, mental_health=?, nutrition=?, > personal_appearance=?, > personality_changes=?, physical_health=?, physical_losses=?, > social_isolation=?, substance_abuse=?, > reason_other1=?, reason_other2=?, > case_notes1=?, case_notes2=?, > case_notes3=?, case_notes4=?, > last_update_date=?, last_update_name=? > WHERE sid = ? > ") || die DBI::errstr; > > $sth->execute( > $in{'caller_last_name'}, $in{'caller_first_name'}, > $in{'caller_phone_areacode'}, > $in{'caller_phone_prefix'},$in{'caller_phone_suffix'}, > $in{'caller_anonymous'}, $in{'referral_source'}, > $in{'referral_source_other'}, > $in{'caller_callback'}, $in{'client_first_name'}, > $in{'client_last_name'}, > $in{'client_soc_security'}, $in{'client_address'}, $in{'client_city'}, > $in{'client_state'}, $in{'client_zipcode'}, $in{'client_zipfour'}, > $in{'client_phone_areacode'}, $in{'client_phone_prefix'}, > $in{'client_phone_suffix'}, > $in{'client_gender'}, $in{'client_age'}, $in{'client_race'}, > $in{'composition'}, $in{'composition_other'}, $in{'referral_reasons'}, > $in{'directions'}, $in{'outcomes_mental_health_agency'}, > $in{'outcomes_crisis_services'}, > $in{'outcomes_senior_ir'}, > $in{'outcomes_home_and_community_services'}, > $in{'outcomes_home_health_agency'}, > $in{'outcomes_adult_protective_services'}, > $in{'outcomes_medical_facility'}, $in{'outcomes_medical_services'}, > $in{'outcomes_involuntary_psychiatric_hospital'}, > $in{'outcomes_voluntary_psychiatric_hospital'},$in{'outcomes_detoxific > ation_facility'}, > $in{'outcomes_law_enforcement'}, $in{'outcomes_other1'}, > $in{'outcomes_other2'}, $in{'outcomes_other3'}, > $in{'outcomes_other4'}, $in{'refused_face_to_face'}, > $in{'refused_recommended_services'}, $in{'refused_will_return'}, > $in{'unable_to_contact'}, $in{'refusal_comments'}, > $in{'other_actions_comments'}, > $in{'caregiver_stress'}, $in{'condition_of_home'}, > $in{'economic_problems'}, $in{'medication_problems'}, > $in{'mental_health'}, $in{'nutrition'}, $in{'personal_appearance'}, > $in{'personality_changes'}, > $in{'physical_health'}, $in{'physical_losses'}, > $in{'social_isolation'}, > $in{'substance_abuse'}, > $in{'reason_other1'}, $in{'reason_other2'}, $in{'case_notes1'}, > $in{'case_notes2'}, > $in{'case_notes3'}, $in{'case_notes4'}, $now_date, $new_specialist, > $in{'sid'}); > > $dbh->disconnect(); > > Any ideas? So far, I have tried enclosing the wildcard variables in the > execute() statement in quotes, but that hasn't seemed to work as well > as I expected. > > Thanks in advance > > Brad Smith >