2015-05-10 94 views
1

我試圖使用PHP將日期時間值插入到我的SQL數據庫中。使用PHP將日期時間插入到SQL Server中

這是我的代碼:

$time= date('Y-m-d H:i:s.u'); 

$ordersquery= "INSERT INTO Orders (customerID, orderDate) VALUES ('{$phonenumber}', '{$time}')"; 
echo $ordersquery."\n"; 

每當我試着執行代碼,也未能將這些信息輸入,讀取數據庫:

INSERT INTO訂單(的customerID, orderDate存儲)VALUES( '(444)849-7592', '2015年5月10日12:03:28.000000')

布爾假

從字符 字符串轉換日期和/或時間時轉換失敗。

我也使用CURRENT_TIMESTAMP和使用ISO-8601格式的嘗試。

+0

什麼數據類型是'orderDate'? – lolbas

+0

orderDate聲明日期時間 –

+1

我不知道任何關於PHP,但我知道SQL服務器。使用[參數化查詢。](https://msdn.microsoft.com/en-us/library/cc296201(v = sql.105).aspx)該鏈接提供了一個php示例。 –

回答

1

據我所知CURRENT_TIMESTAMP可以存儲格式Y-m-d H:m:s的時間戳。除了Y-m-d H:m:s它會給出錯誤。

您可以設置orderDate存儲的數據類型爲varchar,並同時查詢到數據庫只是轉換/類型它轉換爲日期格式..

希望這將有助於或可能給你一個方法來解決它....

+0

這是當我使用Current_Timestamp時得到的:INSERT INTO訂單(customerID,orderDate)VALUES('(333)736-4572','CURRENT_TIMESTAMP') 布爾值false 從字符串轉換日期和/或時間時轉換失敗。同時插入 空 –

+0

組orderDate存儲數據類型爲varchar在db和在查詢中以DB只是轉換/類型它轉換爲日期格式DATE_FORMAT Y-M-d H:I:s.u –

+1

@MangeshSatheIND NEVER EVER商店的日期時間值爲varchar。 –

2

試試這個格式來代替:

$time= date('Y-m-d H:i:s'); 

值在Datetime插入應該是 'YYYY-MM-DD HH:MM:SS' 格式。支持的範圍是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。

+0

這就是當我使用'YYYY-MM-DD HH:MM:SS'INSERT INTO Orders(customerID,orderDate)時輸出的結果VALUES('(333 )736-4572','1969196919691969-DecDec-WedWed 1919:DecDec:stst') 布爾值false –

+1

@IrisSpik不!使用我在代碼部分中指定的部分,而不是下面的解釋 - 我的意思是這部分:'$ time = date('Ymd H:i:s');' – Hatef

+0

這裏輸出:INSERT INTO Orders(customerID,orderDate )VALUES('(578)743-4753','2015-05-10 13:11:26') boolean false –

相關問題