For i = 0 To fieldcount If i = 7 Then rsora(fieldname(i)) = IIf(Trim(Text1(i)) = "", Null, Format(Trim(Text1(i)), "yyyy-mm-dd")) Else Debug.Print Text1(i) rsora(fieldname(i)) = IIf(Trim(Text1(i)) = "", 0, Trim(Text1(i).Text)) End If Next rsora.Update rsora.Close其中fieldname为一数组,内容为字段名,Text1为一文本框控件组。 我发现问题在ado的addnew上,直接用insert语句插入记录时小数没问题的。 另:错误是ora-01722:无效数字。
create table ZX_ZYQLXX ( DLDM varchar2(8) not null,
QLMC varchar2(20) not null,
QLQC number(6,2),
JK number(6,2),
KS number(2,0),
KJ varchar2(60),
QLBG number(4,1),
zz varchar2(20),
SFTH varchar2(2),
JZND date,
JGXS varchar2(8),
primary key(DLDM,QLMC) );
所有的number类型字段,如果是在8。05的数据库下执行程序,则没有问题。如果是在8。16的数据库下执行程序,则所有的有小数的字段输入整数没问题,输入小数保存时就报“oracle 不认识的数据类型”?????录入程序为同一vb程序,增加记录使用ado的addnew方法。
rsora.AddNew
For i = 0 To fieldcount
If i = 7 Then
rsora(fieldname(i)) = IIf(Trim(Text1(i)) = "", Null, Format(Trim(Text1(i)), "yyyy-mm-dd"))
Else
Debug.Print Text1(i)
rsora(fieldname(i)) = IIf(Trim(Text1(i)) = "", 0, Trim(Text1(i).Text))
End If
Next
rsora.Update
rsora.Close其中fieldname为一数组,内容为字段名,Text1为一文本框控件组。
我发现问题在ado的addnew上,直接用insert语句插入记录时小数没问题的。
另:错误是ora-01722:无效数字。