将char数据类型转换为日期时间数据类型会导致超出范围的datetime值
我有一个WPF应用程序。 date
是我的表,它的两列是employeename
( varchar(10)
)和date
( datetime
)
我的代码是:
Sqlconncetion con = new Sqlconnection("my database connection "); SqlCommand cmd = new SqlCommand("insert into date values('"+textBox1.Text+"','"+datePicker1.Text+"')", con); con.Open(); int n = cmd.ExecuteNonQuery(); if (n > 0) { MessageBox.Show("insert"); }
实际上我的WPF datepicker
格式输入为"dd/mm/yyyy
”,SQL Server表格接受日期格式为mm/dd/yyyy
。 如何更改SQL Server datetime
数据类型日期格式? 请通过c#中的代码给出解决方案..
我的任务是显示所有姓名和出生日期。 我的条件是基本的,但在选择日期和按钮输入时,我得到例外。 我的代码是
SqlConnection con = new SqlConnection("my connection "); SqlDataAdapter da = new SqlDataAdapter("select name,date from date where date between'"+ Convert.ToDateTime( datePicker2.SelectedDate)+"' and '"+ Convert.ToDateTime( datePicker3.SelectedDate)+"'",con); DataSet ds = new DataSet(); da.Fill(ds, "entry"); da.Dispose(); dataGrid1.DataContext = ds.Tables["entry"].DefaultView;
plz帮我解决代码错误并编写正确的代码。 这是一个WPF应用程序。
使用SqlParameters将值传递给数据库。 它为您提供类型安全性,性能并防止SQL注入。 还将使用using
语句来保证数据库连接将被关闭:
var cmdText = "INSERT INTO date VALUES(@name, @date)"; using(var con = new SqlConnection(conString)) using(var cmd = new SqlCommand(cmdText, con)) { cmd.Parameters.Add("@name", textBox1.Text); cmd.Parameters.Add("@date", datePicker1.SelectedDate); con.Open(); int n = cmd.ExecuteNonQuery(); //... }