INFORMIX直接执行一个SQL语句
现在的需求是做表之间的数据导出。表名和字段名配置在参数表中。我的做法是将这些参数从参数表中读出,拼成一个INSERT语句,然后
直接执行。
代码片段如下:
memset(strInsStat, 0, sizeof(strInsStat));
sprintf(strInsStat, "insert into CHY_TEST_1(");
strncat(strInsStat, strAllColumnName, strlen(strAllColumnName) - 1);
strcat(strInsStat, ") select ");
strncat(strInsStat, strAllColumnName, strlen(strAllColumnName) - 1);
strcat(strInsStat, " from chy_test");
printf("strInsStat=%s\n", strInsStat);
EXEC SQL :strInsStat;
strAllColumnName是表的字段名。
但是这样执行会报错。各位有更好的办法么?
谢谢。 shell就可以实现的东西,非得用高级语言来实现。。哎。。。 也考虑过用SHELL来实现,但是SHELL对数据库的操作不太好,特别是大数据量的,连接不太稳定。 现在想把一个SQL语句放在字符串中,然后传给INFORMIX来执行。有办法么?谢谢。 已解决,可以用EXEC SQL prepare和EXEC SQL EXECUTE来解决。谢谢。
页:
[1]