我正在尝试将Excel VBA用户窗体中的值插入MySQLDBA。 日期列的空文本框值会出现此问题。 MySQL不接受"但它允许Null。
我可以在插入查询中添加一个case语句来检查列的值是否为空字符串,如果是,则为该列插入null?否则,它应该插入文本框的值。
这是我在VBA中的当前查询,其中应检查Date_of_Birth列是否为空字符串:
Str = "insert into sample.details (ID,Name,Age,Gender,Date_of_Birth) values ('" & txt1.Value & "', '" & txt2.Value & "','" & txt3.Value & "','" & txt4.Value & "','" & txt5.Value & "');"
P.S我尝试为txt5.value设置if条件但是没有用。
答案 0 :(得分:0)
您可以使用IIf
功能。
Str = "insert into sample.details (ID,Name,Age,Gender,Date_of_Birth) values ('" & txt1.Value & "', '" & txt2.Value & "','" & txt3.Value & "','" & txt4.Value & "'," & IIf(txt5.Value="","null","'" & txt5.Value & "'") & ");"