这是我的代码:
SqlCommand cmda = new SqlCommand(
"insert into EnteryItem (ItemName, ImageIndex, DateEntery, Index0, ItemBarcode)"
+ "Values (@ItemName, GETDATE(), @ImageIndex, @Index0, @ItemBarcode)"
, cn);
cn.Open();
cmda.Parameters.AddWithValue("@ItemName", "");
// cmda.Parameters.AddWithValue("@DateEntery", now);
cmda.Parameters.AddWithValue("@ImageIndex", "0");
cmda.Parameters.AddWithValue("@Index0", "");
cmda.Parameters.AddWithValue("@ItemBarcode", label12.Text);
cmda.ExecuteNonQuery();
cn.Close();
我尝试了几种方法,但我得到了相同的
将nvarchar值'28 / 01/2014'转换为数据类型int时转换失败。
错误,有时
不允许从数据类型datetime到int的隐式转换。使用CONVERT函数运行此查询。
我需要以特定格式插入日期和时间
答案 0 :(得分:6)
看起来应该交换第二列和第三列的值。应该是:
insert into EnteryItem (ItemName, ImageIndex, DateEntery, Index0, ItemBarcode)
Values (@ItemName, @ImageIndex, GETDATE(), @Index0, @ItemBarcode)
另请注意,您没有使用@DateEntery
参数,但您要将其添加到参数列表中。
答案 1 :(得分:3)
比较您的列名称和值
ItemName ImageIndex DateEntery Index0 ItemBarcode
@ItemName GETDATE() @ImageIndex @Index0 @ItemBarcode
^ ^
你会看到两个标记是向后的。它试图将日期放入整数列。纠正这一点,你应该没事。