|
查看: 944|回复: 6
|
SQL Server+ASP的datetime 問題!!
[复制链接]
|
|
|
我的SQL Server database裡面有兩個fields,StartDate和EndDate.
這兩個fields的data type都是datetime...!!
當我在ASP用INSERT Statement把data儲存的時候就出現了以下的錯誤訊息.
mySQL="INSERT INTO tblTable (startdate, enddate) values ('"&startdate&"', '"&enddate&"')"
Microsoft OLE DB Provider for SQL Server error '80040e07'
The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
我並沒有更改過電腦的任何設定,包括regional setting,
之間都還好的,今天不知怎麼的就出現這個錯誤訊息了.
請問有沒有人能夠幫幫我呢?? |
|
|
|
|
|
|
|
|
|
|
发表于 13-6-2008 08:17 PM
|
显示全部楼层
可能是INPUT不对
试试看response.write startdate,enddate value的value看看
然后把value放进SQL STATEMENT 里
然后在SQLSERVER跑QUERY看能跑没有 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 13-6-2008 09:55 PM
|
显示全部楼层
原帖由 我爱夏天 于 13-6-2008 05:03 PM 发表 
我的SQL Server database裡面有兩個fields,StartDate和EndDate.
這兩個fields的data type都是datetime...!!
當我在ASP用INSERT Statement把data儲存的時候就出現了以下的錯誤訊息.
mySQL="INSERT INTO tblTabl ...
其實我的兩個value是
startdate=Now
enddate=dateAdd(d, variable, startdate)
但是還是不能夠囉~~
問題是出在dd/mm/yyyy和dd/mm/yyyy之間囉~!!
如果直接把日期輸入在statement裡面就沒有問題...!!
就好像INSERT INTO tbltable(startdate, endate) values ('6/13/2008', '6/15/2008')
這樣子就沒有問題.
如果改用built in function - getdate()也沒有問題..
就是如果把日期assign到一個variable就不能夠了...奇怪!! |
|
|
|
|
|
|
|
|
|
|
发表于 13-6-2008 10:38 PM
|
显示全部楼层
|
试试看把startdate enddate的string排成YYYYMMDD,如20080613 |
|
|
|
|
|
|
|
|
|
|
发表于 15-6-2008 03:48 AM
|
显示全部楼层
我建议不要让SQL去做conversion。
把insert statement改成INSERT INTO tbltable(startdate, endate) values (@P0, @P1)
然后在你的code里面把两个DateTime variable pass进去。 |
|
|
|
|
|
|
|
|
|
|
发表于 15-6-2008 01:07 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 16-6-2008 01:03 PM
|
显示全部楼层
問題解決了...!!
謝謝大家的建議!!  |
|
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|