如果定义一个变量要在后面的sql语句里使用,那么应该这样: EXEC SQL BEGIN DECLARE SECTION; char aa[20+1]; // char bb[10+1]; // char cc[3+1]; // EXEC SQL END DECLARE SECTION;
如果变量只在C里面使用,那么在外边直接定义即可。 ============================================== EXEC SQL WHENEVER SQLERROR DO sql_error(); 只在main()里写即可,其他方法里不用写,会自动加的。 其实就是执行完sql后自动加了 if (sqlca.sqlcode < 0) sql_error(); ============================================= 奇怪的问题: EXEC SQL update xx set ... where ...; 当更新0条的时候,程序莫名其妙的从这里结束了,返回main方法,自动退出了。 奇怪。
|