我需要将从 ASP.Net 文本框中获取的日期存储到 SQL Server 2008 date
列中。
我收到以下异常消息。
Conversion failed when converting date and/or time from character string.
我的代码是:
SqlConnection cn;
SqlCommand cmd;
SqlDataAdapter da;
int n=4;
protected void Page_Load(object sender, EventArgs e)
{
cn = new SqlConnection(<Connection String>);
}
protected void Button1_Click(object sender, EventArgs e)
{
try
{
string query = "insert into temp values('" + TextBox1.Text + "')";
cn.Open();
cmd = new SqlCommand(query, cn);
cmd.ExecuteNonQuery();
cn.Close();
Response.Write("Record inserted successfully");
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
}
请帮忙..
提前致谢
最佳答案
将您的代码更改为以下内容(假设 temp
中的列实际上是一个 DateTime
):
protected void Button1_Click(object sender, EventArgs e)
{
try
{
string query = "insert into temp values(@Value)";
cn.Open();
cmd = new SqlCommand(query, cn);
cmd.Parameters.AddWithValue("@Value", DateTime.Parse(TextBox1.Text));
cmd.ExecuteNonQuery();
cn.Close();
Response.Write("Record inserted successfully");
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
您还应该更改您的逻辑以验证 TextBox1.Text
实际上是一个有效日期。
关于c# - SQL Server 日期从字符串转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14661294/