我打算将以下信息插入表:ID_Number(身份证号码)Account_Number(帐号)PutInMoney(存款额)PutIn_Time(存款年月日)PutIn_timeSFM(存款时分秒)
Table_PutIn.Append();
Table_PutIn.FieldValues['ID_Number']:=Edit_IDNumber.Text;
Table_PutIn.FieldValues['Account_Number']:=ComboBox_AccountNumber.Text;
Table_PutIn.FieldValues['PutInMoney']:=Edit_PutInMoney.Text;
Table_PutIn.FieldValues['PutIn_Time']:=trunc(DateTimePicker1.DateTime);
Table_PutIn.FieldByName('PutIn_timeSFM').AsString:=formatdatetim('hh:nn:ss',DateTimePicker2.datetime);
Table_PutIn.Refresh();表中,列名 数据类型 长度
ID_Number char 18
Account_Number char 20
PutInMoney char 25
PutIn_Time datetime 8
PutIn_timeSFM datetime 8
当我输入18位身份证,15位帐号,100元钱,PutIn_Time--2008-5-7 PutIn_timeSFM--20:19:29
运行出现错误,将截断字符串或2进制数据
Table_PutIn.Append();
Table_PutIn.FieldValues['ID_Number']:=Edit_IDNumber.Text;
Table_PutIn.FieldValues['Account_Number']:=ComboBox_AccountNumber.Text;
Table_PutIn.FieldValues['PutInMoney']:=Edit_PutInMoney.Text;
Table_PutIn.FieldValues['PutIn_Time']:=trunc(DateTimePicker1.DateTime);
Table_PutIn.FieldByName('PutIn_timeSFM').AsString:=formatdatetim('hh:nn:ss',DateTimePicker2.datetime);
Table_PutIn.Refresh();表中,列名 数据类型 长度
ID_Number char 18
Account_Number char 20
PutInMoney char 25
PutIn_Time datetime 8
PutIn_timeSFM datetime 8
当我输入18位身份证,15位帐号,100元钱,PutIn_Time--2008-5-7 PutIn_timeSFM--20:19:29
运行出现错误,将截断字符串或2进制数据
用Trim将空格去掉试试
如:
Trim(Edit_IDNumber.Text);
Query_PutIn.Close;
Query_PutIn.SQL.Clear;
Query_PutIn.SQL.Add('UPDATE Accounts');
Query_PutIn.SQL.Add('SET Deposits='''+FloatToStr(D)+''',Average_Deposits='''+FloatToStr(A+'''');
Query_PutIn.ExecSQL();在表里面,Deposits和Average_Deposits都是15位的char类型!我先把A和D从表里取出来,如下:
A:=StrToFloatDef(Query_PutIn.FieldValues['Average_Deposits'],0);
D:=StrToFloatDef(Query_PutIn.FieldValues['Deposits'],0);然后经过一些运算后,得到新的A和D!都是float类型的!因此在修改表的时候用了以上的FloatToStr函数!是不是不能这样转化啊?
这个你用formatfloat('####0.00',d)来进行转换试试