我在页面中有日历,我必须获取所选日期并将其插入数据库表。
错误消息是:
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 :(得分:0)
您好需要检查sql server中的表,为每个字段定义了哪种数据类型。
然后在你的代码中使用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));