是哪种数据库?ORACLE: update table1 set dm2=substr(dm1, length(dm1)-3, 3)
我使用的query1,所以要用SQL语句写,可我这样写还说出错,不知道是什么原因。 query1.close; query1.sql.clear; query1.sql.add(Format('update dwdm set dm2=substr(dm1, length(dm1)-3, 3))); query1.open;
使用下面这句不能将dm2的内容代入dm1中,但能将dm1清空,当然dm2是有内容的。 query1.sql.add(format('update dwdm set dm1="%s"',[copy(query1dm2.value,4,3)])); 我主要是想将dm2的后3位数字(字符型)的代入dm1(字符型)中使用下面这句却能将ppo全部代入dm1中 query1.sql.add(format('update dwdm set dm1="%s"',['ppo']));
你使用的什么数据库? sqlserver,oracle,sybase? query1.close; query1.sql.clear; oracel,sql server: aaa='update dwdm set dm2=substr(dm1, length(dm1)-3, 3)'; sql server: aaa='update dwdm set dm2=right(dm1,3)' query1.sql.add(aaa); query1.ExecSQL;
数据库名是:dwdm.db,就是用delphi设计出来的。
说了半天你也没说出你的数据库为paradox的本地数据库。 aaa='update dwdm set dm2=SUBSTRING(dm1 from 4 to 6)'local sql 跟 sql server ,oracle的 sql 语法可不大一样啊。
update table1 set dm2=substr(dm1, length(dm1)-3, 3)
query1.close;
query1.sql.clear;
query1.sql.add(Format('update dwdm set dm2=substr(dm1, length(dm1)-3, 3)));
query1.open;
query1.sql.add(format('update dwdm set dm1="%s"',[copy(query1dm2.value,4,3)]));
我主要是想将dm2的后3位数字(字符型)的代入dm1(字符型)中使用下面这句却能将ppo全部代入dm1中
query1.sql.add(format('update dwdm set dm1="%s"',['ppo']));
query1.sql.clear; oracel,sql server: aaa='update dwdm set dm2=substr(dm1, length(dm1)-3, 3)';
sql server: aaa='update dwdm set dm2=right(dm1,3)' query1.sql.add(aaa);
query1.ExecSQL;