原来的代码是先修改这个表,再为这个表加一个新字段:
close;
sql.Clear;
sql.Add('update TableName set columnName=''银行卡'' where columnName=''信用卡'''); //将以前的信用卡都改为银行卡
execsql;
sql.Clear;
sql.Add('alter table TableName add checked bit');
execsql;
执行第二条命令的时候就会提示:“表TableName正在被别的用户或者进程试用,数据库引擎无法锁定”,因为是在一个事务中进行的处理,我怀疑,跟上面的update语句有冲突,把两个执行顺序调换了一下,执行成功了:
close;
sql.Clear;
sql.Add('alter table TableName add checked bit');
execsql;
sql.Clear;
sql.Add('update TableName set columnName=''银行卡'' where columnName=''信用卡'''); //将以前的信用卡都改为银行卡
execsql;