2017-08-25 22 views
1

当我从DtPicker或Calendar向数据库firebird添加值时,VB6.0编程有一个奇怪的问题。当我添加一天的日期是1日至12日,它可以将其添加到数据库中,但是当我尝试添加日期,其中日期是第13日或更高时,它显示错误消息当day部分大于12时,我无法向firebird添加数据日期值

运行时错误'2147467259'(80004005)':
[ODBC火鸟驱动程序]从字符串 “13/08/2017”[火鸟]转换错误

在数据库中的类型是 “DATE”,但是当我转键入数据库到“VARCHAR”一切都很好,但“VARCHAR”不能执行Date函数。

Image

+2

它可能期待''mm/dd/yyyy''日期格式。我习惯于VBA而不是VB6,但它可能像使用'Format(whatever_date,“mm/dd/yyyy”)' – YowE3K

+0

SQL中的语法如何?我用这段代码把它放到数据库中: – SETYO

+0

SQL的语法如何?我用这段代码把它放到数据库中:插入到TBL_KAL值(''&Cal1.Value&'','“&cmbKet.Text&”','“&txtHour.Text&”') – SETYO

回答

0

如果您传递日期值作为字符串或级联声明的情况下,一定要设置“YYYY-MM-DD”格式(ISO_8601)的值。

如果您准备了带有参数的语句,那么驱动程序本身将自动处理数据类型转换的安全。至少它应该。

建议使用最后一个选项。

相关问题