Help with Informix ESQL/C
Posted in 1995
I am upgrading from Informix ver 3.3 to ver 4.1. I am to the point of
modifying my C code to match the ver 4.1 syntax. I am passing two
parameters from a Perform screen to the C program. It looks something
like:
call funct1(string1, string2)
where string1 and string2 are field identifiers for table1 in
the Perform screen.
The C function is supposed to update the database using these two
strings something like:
$ update table2
set field1 = string1
where field2 = string2;
I got sqlca.sqlcode = -217, column name not found in any table in
the query. I tried many options. The only way I can get it to update
is to hard code the string values in Perform:
call funct1("D-99999", "T-3446")
and change the C code to look like:
$ char *s1, *s2;
s1 = string1->v_charp;
s2 = string2->v_charp;
$ update table2
set field1 = $s1
where field2 = $s2;
or hard code the values in the C program:
$ update table2
set field1 = "D-99999"
where field2 = "T-3446";
Obviously, these solutions are not acceptable. I cannot find an
example in any of the manuals that does a similar operation. I would
greatly appreciate any input.
jkharris@utk.edu