Hi,
I'm unable to solve this problem and I think (hope) this is the right place to
start. I have MyODBC on a Windows NT server connecting to a mySQL database on
a Linux machine. I'm using Cold Fusion on the Windows machine and a particular
query fails for some records (not all). I can type in the query manually in
the mysql client on the Linux machine and it works fine. So I think it must be
related to something in MyODBC and that's why I'm posting here.
Here is the error I'm getting:
----------------------------------------------------------
ODBC Error Code = S1090 (Invalid string or buffer length)
[TCX][MyODBC]SQLBindParameter not used for all parameters
----------------------------------------------------------
Here is what the SQL looks like:
SQL = "insert into Standards ( ID ,CommitteeID ,StdNumber ,Subject ,ModifyDate
,Link ,Stage ,SortStr ,Related ) values ( 11388 ,8288
,'1111:2222' ,'Something something something - Size "S"' ,'1999-07-08
10:47:19'
,'http://web.something.org/SiteLicense/Download.asp?sku=xxx+1111:2222'
,'0.0' ,'2697' ,'XYZ Std: J222 J333' )"
And of course, here is what each field is:
ID: int 4
CommitteeID: int 4
StdNumber: varchar 100
Subject: text 65535
ModifyDate: timestamp 16
Link: text 65535
Stage: double 8
SortStr: varchar 100
Related: text 65535
OK, I'm not an expert SQL/ODBC programmer, so please be kind if I'm doing
something blatantly errant. My hunch is the question mark in the Link field is
getting interpreted as a parameter. However, it is not a parameter and I don't
know how to specify that. Does it need to be escaped somehow? And how come I
can enter this exact query into the mysql client directly with no complaints?
Thanks in advance,
Derek