在制作存储过程中代码如下Public Sub Insertlayout()
DB_Connect
SqlStmt = "INSERT INTO layout (refno,quotationdate,clientname,faxnumber,clientcompany," _
+ "mecompany,atfirst,atlast,re)" _
+ "Values('" + Trim(refno) + "'," + Trim(str(quotationdate)) + ",'" + Trim(clientname) + "','" _
+ Trim(faxnumber) + "','" + Trim(clientcompany) + "','" + Trim(mecompany) + "','" _
+ Trim(atfirst) + "','" + Trim(atlast) + "','" + Trim(re) + "')"
OdbcExt (SqlStmt)
Rc = SQLFreeStmt(Hstmt, SQL_DROP)
DB_Disconnect
End Sub其中变量quotationdate是日期型,(date)
quotationdate在sql数据库中是datetime。
变量quotationdate传递到Insertlayout正常,日期是2004-10-22,但是存放进去后就变为1905-05-20,为什么??????
DB_Connect
SqlStmt = "INSERT INTO layout (refno,quotationdate,clientname,faxnumber,clientcompany," _
+ "mecompany,atfirst,atlast,re)" _
+ "Values('" + Trim(refno) + "'," + Trim(str(quotationdate)) + ",'" + Trim(clientname) + "','" _
+ Trim(faxnumber) + "','" + Trim(clientcompany) + "','" + Trim(mecompany) + "','" _
+ Trim(atfirst) + "','" + Trim(atlast) + "','" + Trim(re) + "')"
OdbcExt (SqlStmt)
Rc = SQLFreeStmt(Hstmt, SQL_DROP)
DB_Disconnect
End Sub其中变量quotationdate是日期型,(date)
quotationdate在sql数据库中是datetime。
变量quotationdate传递到Insertlayout正常,日期是2004-10-22,但是存放进去后就变为1905-05-20,为什么??????
解决方案 »
- VB如何打开这样的文件夹浏览对话框?
- 定期检测程序运行
- 请问各位大神,写游戏脚本用什么语言比较好呢呢?
- vb msflexgrid控件防止录重复数据
- 为什么程序跳过一些代码不执行
- 如何制作像QQ和瑞星那样的界面
- 怎样让ODBC驱动有IBM DB2 ODBC DRIVER
- webbrowser如何判断第一个页面跳转到第二个页面是否完毕
- 难道就没人吗?http://www.csdn.net/expert/topic/510/510450.shtm
- 当unload窗体时,如何使此窗体内还未执行完的循环停止?
- 请问如何在一个程序路径中去掉一个程序路径
- word、execl考试,如果用VB对考试题进行判断!必有重谢!!
+ "mecompany,atfirst,atlast,re)" _
+ "Values('" + Trim(refno) + "'," + Trim(Format(quotationdate, "yyyy-m-d")) + ",'" + Trim(clientname) + "','" _
+ Trim(faxnumber) + "','" + Trim(clientcompany) + "','" + Trim(mecompany) + "','" _
+ Trim(atfirst) + "','" + Trim(atlast) + "','" + Trim(re) + "')"
+ "mecompany,atfirst,atlast,re)" _
+ "Values('" + Trim(refno) + "',CONVERT(DATETIME,'" + CStr(quotationdate)+ "',120),'" + Trim(clientname) + "','" _
+ Trim(faxnumber) + "','" + Trim(clientcompany) + "','" + Trim(mecompany) + "','" _
+ Trim(atfirst) + "','" + Trim(atlast) + "','" + Trim(re) + "')"
2004-10-22=1972 <> '2004-10-22'
On Error GoTo ErrorHandler
quotationdate= CDate(str(trim(quotationdate)))
On Error GoTo 0
Exit Sub
End If
ErrorHandler:
If Not Err = 0 Then
MsgBox "输入了非法的日期!", , "警 告"
End If
On Error GoTo 0
Exit Sub
DATETIME是转换后的数据类型。quotationdate要转换的数据。120 是转换后的格式,表示yyyy-mm-dd hh:mm:ss[.fff]。