数据类型不兼容。(100分)

  • 主题发起人 主题发起人 nhjoy
  • 开始时间 开始时间
N

nhjoy

Unregistered / Unconfirmed
GUEST, unregistred user!
我写的同一句SQL
with query1 do
begin
close;
sql.clear;
sql.add('insert into table1 (field1,field2,field3)');
sql.add(' values (:aaa,:bbb,:ccc)');
params[0].value:=strtoint(edit1.text);
params[1].value:=strtoint(edit2.text);
params[2].value:=strtoint(edit3.text);
prepare;
exesql;
end;
如果我的FIELD用SHORT即短整型,则会提示数据类型转换不合法。
如果我的FIELD用INTEGER即整型,则通过很顺利。谁来说说原因。




 
你将query :select * from tablename
然后add all fileds,然后在程序开头部分就可以看见字段类型
可能是smallint 或 float
 
SHORT 和 Int 的取值范围不同,
数据库中你是 Int
 
这是由于取值范围不同的原因.
 
FIELD中的类型应该和数据库表中的类型一致,如果不一致,可能会有问题
 
你输入的长度有关,两种类型范围不一样的。
 
多人接受答案了。
 

Similar threads

后退
顶部