F
fshell
Unregistered / Unconfirmed
GUEST, unregistred user!
有一数据库,我首先用
Query1.sql.add('Insert into TableName (a,b) values(1,2)');
Query1.ExecSQL();
增加一记录,而这数据库有一自动增加的字段AutoAdd,理论我增加的记录的AutoAdd
字段值应该是最大的,然后我用以下语句想获得我刚刚增加的记录的AutoAdd值
Query2.close();
Query2.sql.add('select max(AutoAdd) as MaxNO from TableName');
Query2.open();
GetAutoAdd := Query2.FieldByName('MaxNO').AsInteger;
可是一查看GetAutoAdd的值,发现却不是我增加的那条记录,而是第二新的记录,可是
查看数据库,我的记录是千真万确的增加了,而且不退出程序,其他地方查找这个数据
库,也能查找得到我增加的记录,那到底为什么呢?
Query1.sql.add('Insert into TableName (a,b) values(1,2)');
Query1.ExecSQL();
增加一记录,而这数据库有一自动增加的字段AutoAdd,理论我增加的记录的AutoAdd
字段值应该是最大的,然后我用以下语句想获得我刚刚增加的记录的AutoAdd值
Query2.close();
Query2.sql.add('select max(AutoAdd) as MaxNO from TableName');
Query2.open();
GetAutoAdd := Query2.FieldByName('MaxNO').AsInteger;
可是一查看GetAutoAdd的值,发现却不是我增加的那条记录,而是第二新的记录,可是
查看数据库,我的记录是千真万确的增加了,而且不退出程序,其他地方查找这个数据
库,也能查找得到我增加的记录,那到底为什么呢?