SQL表编辑:在表中添加DateTime值

时间:2013-09-04 10:53:57

标签: c# sql sql-server datetime

我创建了SQL表编辑器,用于在某些列中添加信息。但是一列设置为“DateTime”,应用程序无法写入。这是代码:

private void button2_Click(object sender, EventArgs e)
    {


try

{
    string connectionString = @"Data Source=" + textBox4.Text + ";" + "Initial Catalog=" + textBox1.Text + ";" + "User ID=" + textBox2.Text + ";" + "Password=" + textBox3.Text;
    using (SqlConnection connection = new SqlConnection(connectionString))
    using (SqlCommand command = connection.CreateCommand())
    {
        command.CommandText = "INSERT INTO user_ban (char_id, status, ban_date, ban_hour, ban_end) VALUES (@char_id, @status, DateTime @ban_date, @ban_hour, @ban_end)";

        command.Parameters.AddWithValue("@char_id", "1");
        command.Parameters.AddWithValue("@status", "1");          
        command.Parameters.AddWithValue("@ban_date", "1");
        command.Parameters.AddWithValue("@ban_hour", "1");
        command.Parameters.AddWithValue("@ban_end", "1");              
        connection.Open();
        command.ExecuteNonQuery();
        MessageBox.Show("Char Banned");
    }
}
catch (SqlException ex)
{
   MessageBox.Show(ex.Message);
}
}

列'ban_date'设置为DateTime。 谢谢!

2 个答案:

答案 0 :(得分:4)

"1"不是约会对象。尝试将日期传递给它

command.Parameters.AddWithValue("@ban_date", DateTime.Today);

从命令字符串

中删除DateTime
command.CommandText = "INSERT INTO user_ban 
                      (char_id, status, ban_date, ban_hour, ban_end) 
                      VALUES 
                      (@char_id, @status, @ban_date, @ban_hour, @ban_end)";

答案 1 :(得分:0)

如果ban_date列为DateTime,为什么要将1插入其中?没有意义。 1根本不是有效的DateTime。将其更改为有效的DateTime值。

其次,您不应在VALUES部分使用值类型。从

改变它
command.CommandText = "INSERT INTO user_ban (char_id, status, ban_date, ban_hour, ban_end)
                       VALUES (@char_id, @status, DateTime @ban_date, @ban_hour, @ban_end)";
                                                  ^^^^^^^^^//delete this

command.CommandText = "INSERT INTO user_ban (char_id, status, ban_date, ban_hour, ban_end)
                       VALUES (@char_id, @status, @ban_date, @ban_hour, @ban_end)";
相关问题