几个没搞懂的问题,想请教!
1.当执行脚本里一个SQL语句,比如insert into table_a(...) values(a,b,c..);如果不用commit提交或rollback回滚,数据库里table_a表数据有变化没有?当在插入以后用一个基于该表的数据窗口,做dw_1.retrieve()操作,这些数据却都可以找到.这是不是插入的数据放在本地的缓冲区里,用retrieve也是从本地缓冲区里读的数据?
2.当执行一个SQL语句后,用SQLCA.SQLCODE来判断(假设事物对象SQLCA)语句执行成功与否,该怎么判断,比如update table_2 set col1='aa',col2='bb' where col1='cc';
假如字段col1没有匹配'cc'的,这条语句返回的sqlca.sqlcode为0?100?-1?书上说的执行成功,有数据返回是0,执行不成功是-1,执行成功,没数据返回是100,针对select\insert\update不同操作该怎么理解?
3.select语句后要不要用commit/rollback?