,当我尝试插入datetime
值到SQL Server数据库中,我得到这个错误:插入日期时间从C#为SQL Server数据库
Conversion failed when converting date and/or time from character string
代码:
connection.Open();
SqlCommand command = new SqlCommand("insert into table values(@time)", connection);
command.Parameters.AddWithValue("@time", DateTime.Now);
command.ExecuteNonQuery();
connection.Close();
表table
有1个datetime
列称为time
。
编辑:
我的表在MSSQL 2012创建:http://i.imgur.com/TJ3t3y7.png
我真正的代码是:
public void vytvorDotaz(String uzivatel, DateTime cas, String nazev, String dotaz)
{
int id = getMaxID() + 1;
connection.Open();
SqlCommand command = new SqlCommand("insert into otazky values('" + id + "', '" + uzivatel + "', '0','0','0','@cas','" + nazev + "','" + dotaz + "')", connection);
command.Parameters.AddWithValue("@cas", DateTime.Now);
command.ExecuteNonQuery();
connection.Close();
}
你的插入语句是否真的有**一个**单引号或者是一个错误类型? –
备注:从SQL Server ** 2008 **开始,有一个名为'TIME'的新数据类型 - 仅仅调用'time'列是非常糟糕的想法 - 使用更有意义,更有表现力的东西! –
请写出实际的SQL,而不是该问题的dummy-sql。另外,你试图存储DateTime的列的类型是什么? –