0
我想使我的SQLEXPRESS db INSERT命令并尝试向我的日期时间列输入值时收到错误。错误插入日期时间c#类型到SQL日期时间列
这是SQL命令我使用:
SqlDateTime sTime = new SqlDateTime(book.PublishedDate);
string sql = string.Format("Insert into Books" +
"(Name, PublishDate, IsInternal) Values" +
"('{0}', '{1}', '{2}')",
book.Name, sTime.Value, book.IsInternal);
book.PublishedDate - 被DateTime类型 和PublishedDate列是SQL的DateTime
我收到以下错误: 一个varchar的转化数据类型导致日期时间数据类型导致超出范围值。
我该如何解决?
现在使用parametrised查询时,我得到错误,而我对某些字段为空值: 参数化查询“(@Name为nvarchar(57),@ PublishDate DATETIME,@ IsValid的位,@ IsApprov”需要参数“ @Author',这是没有提供的 – kaycee
@ kaycee - 我看不到你的代码,我发布的代码到目前为止几乎完全等于你发布到目前为止的代码 –
我有一个字段在查询是空的 cmd.Parameters [“@ Author”]。Value = book.Author; 如果book.Author == null,那么我得到我刚刚提到的错误...它似乎没有知道处理空值 – kaycee