从字符串转换datetime时转换失败。请帮忙解决这个问题 [英] Conversion failed when converting datetime from character string. please help to solve this
本文介绍了从字符串转换datetime时转换失败。请帮忙解决这个问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当我尝试从C#窗口应用程序插入db时,我得到以下SqlException。
从字符串转换datetime时转换失败。
这是我的SQL查询:
CREATE TABLE 订单预订
(
orderdate datetime ,
clientname varchar ( 40 ),
deliverylocation varchar ( 30 ),
deliverydate datetime
)
Sqlexception cmd.ExecuteNonQuery();
这是我的添加按钮代码:
{
SqlConnection cnn = new SqlConnection( @ 服务器= NGENIOUS-WSSDEV\SQLEXPRESS;逸abase = MIC; Trusted_Connection = True);
cnn.Open();
SqlParameter p1 = new SqlParameter( @ orderdate,dateTimePicker1.Text);
SqlParameter p2 = new SqlParameter( @ clientname,comboBox1.Text);
SqlParameter p3 = new SqlParameter( @交货地点,textBox2.Text);
SqlParameter p4 = new SqlParameter( @交货日期,dateTimePicker2.Text);
string query = 插入订单预订值(' + p1.Value + ',' + p2.Value + ',' + p3.Value + ',' + p4.Value + ')跨度>;
SqlCommand cmd = new SqlCommand(query,cnn);
cmd.ExecuteNonQuery();
cnn.Close();
button2.Enabled = false ;
}
我已添加此代码:
SELECT CONVERT ( VARCHAR ( 10 ),GETDATE(), 120 ) AS [YYYY-MM- DD]
但同样的错误请帮忙:(
时间不在sql server中显示数据库 :(
在此先感谢:rose :: rose:
解决方案
DateTime date1 = Convert.ToDateTime(dateTimePicker1.Text);
DateTime date2 = Convert.ToDateTime(dateTimePicker2.Text);
SqlCommand cmd = new SqlCommand(insert into dep( orderdate,clientname,deliverylocation,deliverydate)values(@ orderdate,@ clientname,@ deliverylocation,@ deliverydate),con);
cmd.Parameters.AddWithValue( @orderdate,date1);
cmd.Parameters.AddWit hValue(@ clientname,comboBox1.SelectedItem.ToString());
cmd.Parameters.AddWithValue(@ deliverylocation,textBox2.Text);
cmd。 Parameters.AddWithValue(@ deliverydate,date2);
con.Open();
cmd.ExecuteNonQuery();
con。关闭();
只需复制并粘贴按钮点击
它将运行
在insert语句中直接传递dateTimePicker1,dateTimePicker2的值
DateTime date1 = Convert.ToDateTime(dateTimePicker1.Text);
SqlCommand cmd = new SqlCommand(insert into dep(DepName,Date)values(@ d,@ da),con);
cmd.Parameters.AddWithValue(@ d ,textBox1.Text);
cmd.Parameters.AddWithValue(@ da,date1);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
它正在运行使用它。
祝你好运。
无需在表格def中进行更改萌发的
I get the following SqlException when i am trying to insert into db from C# window application.
Conversion failed when converting datetime from character string.
This is my SQL Query:
CREATE TABLE orderbooking ( orderdate datetime , clientname varchar(40) , deliverylocation varchar(30) , deliverydate datetime )
Sqlexception on cmd.ExecuteNonQuery();
This is my Add button code:
{ SqlConnection cnn = new SqlConnection(@"Server=NGENIOUS-WSSDEV\SQLEXPRESS;Database=MIC;Trusted_Connection= True"); cnn.Open(); SqlParameter p1 = new SqlParameter("@orderdate", dateTimePicker1.Text); SqlParameter p2 = new SqlParameter("@clientname", comboBox1.Text); SqlParameter p3 = new SqlParameter("@Delivery Location", textBox2.Text); SqlParameter p4 = new SqlParameter("@Delivery Date", dateTimePicker2.Text); string query = "insert into orderbooking values('" + p1.Value + "','" + p2.Value + "','" + p3.Value + "','" + p4.Value + "')"; SqlCommand cmd = new SqlCommand(query, cnn); cmd.ExecuteNonQuery(); cnn.Close(); button2.Enabled = false; }
I have added this code:
SELECT CONVERT(VARCHAR(10), GETDATE(), 120) AS [YYYY-MM-DD]
but same error please help :(
Timing is not displaying in sql server database :(
Thanks in Advance :rose::rose:解决方案DateTime date1 = Convert.ToDateTime(dateTimePicker1.Text);
DateTime date2 = Convert.ToDateTime(dateTimePicker2.Text);
SqlCommand cmd = new SqlCommand("insert into dep(orderdate ,clientname ,deliverylocation ,deliverydate )values(@orderdate,@clientname ,@deliverylocation ,@deliverydate )", con);
cmd.Parameters.AddWithValue("@orderdate",date1 );
cmd.Parameters.AddWithValue("@clientname ", comboBox1.SelectedItem.ToString());
cmd.Parameters.AddWithValue("@deliverylocation ", textBox2.Text);
cmd.Parameters.AddWithValue("@deliverydate ", date2);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
Just Copy and Paste on buttonClick
It will Run
Pass Directly values of dateTimePicker1,dateTimePicker2 in insert statement
DateTime date1 = Convert.ToDateTime(dateTimePicker1.Text);
SqlCommand cmd = new SqlCommand("insert into dep(DepName,Date)values(@d,@da)", con);
cmd.Parameters.AddWithValue("@d", textBox1.Text);
cmd.Parameters.AddWithValue("@da", date1);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
it is running use it .
Good Luck.
no need to make changes in table defination
这篇关于从字符串转换datetime时转换失败。请帮忙解决这个问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文