2013-12-15 206 views
1

我在頁面上有日曆,我必須選擇日期並將其插入到數據庫表中。將參數值從String轉換爲DateTime?

的錯誤信息是:

Insert : Failed to convert parameter value from a String to a DateTime. 
Insert Into Bills (ClientID,Credit,PhysicianRef,Billdate,BillImage,Status) Values (@bClientID,@bCredit,@bPhysicianRef,@bBilldate,@bBillImage,@bStatus)Insert : Failed to convert parameter value from a String to a DateTime. 
bBilldate 
+0

往往造成區域設置,日期格式:DD/MM/YYYY<=>毫米/ DD/YYYY –

+2

難道你不明白什麼部分錯誤的? – SLaks

+0

@SLaks爲什麼失敗? – Interaoi

回答

0

嗨,你需要檢查表中的數據類型是什麼已經爲每個字段定義的SQL服務器。

,之後在代碼中使用的SqlParameter類。

例如

int ClientID = Convert.ToInt32(txtClientID.text); 

yourcommandobject.Parameters.Add(new SqlParameter(@bClientID,ClientID)); 

同樣繼續其他參數了。

爲datetime值,你可以像使用System.Globalization命名您的命名空間上榜 加。

using System.Globalization; 

Datetime Billdate = DateTime.Parse(txtDate.Text.Trim()).ToString("mm/dd/yyyy", CultureInfo.InvariantCulture); 
yourcommandobject.Parameters.Add(new SqlParameter(@bBilldate,Billdate)); 

,如果在SQL Server的BillDate列類型爲nvarchar/vatchar或任何字符串類型的數據類型,那麼你可以這樣做。

string tempdate = yourcalendertool.SelectedDate;// here you need to get the selected date 
string Billdate = DateTime.Parse(tempdate).ToString("yyyy/MM/dd", CultureInfo.InvariantCulture); 
yourcommandobject.Parameters.Add(new SqlParameter(@bBilldate,Billdate)); 
+0

我有工具日曆不是文本框 – Interaoi

+0

有什麼問題?只需更換您的日曆工具而不是文本框。而已。你所做的工作 –

+0

選定的日期將插入像字符串,我必須將其轉換爲字符串? – Interaoi