[英]inserting Date Time to sql server 2008 using c#
我failed to convert parameter value from a string to a datetime
錯誤,我有一個文本框,用戶應在其中插入日期,我的代碼是:
SqlConnection Con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\targil3.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
SqlDataAdapter adapt = new SqlDataAdapter();
adapt.InsertCommand = new SqlCommand("INSERT INTO tblEmployee VALUES (@employeeNumber, @employeePrivateName, @employeeFamilyName ,@city, @street, @houseNo, @phoneNumber, @birthDate, @startWorkingDate)", Con);
adapt.InsertCommand.Parameters.Add("@employeeNumber", SqlDbType.VarChar).Value = textBox1.Text;
adapt.InsertCommand.Parameters.Add("@employeePrivateName", SqlDbType.VarChar).Value = textBox2.Text;
adapt.InsertCommand.Parameters.Add("@employeeFamilyName", SqlDbType.VarChar).Value = textBox3.Text;
adapt.InsertCommand.Parameters.Add("@city", SqlDbType.VarChar).Value = textBox4.Text;
adapt.InsertCommand.Parameters.Add("@street", SqlDbType.VarChar).Value = textBox5.Text;
adapt.InsertCommand.Parameters.Add("@houseNo", SqlDbType.Int).Value = textBox6.Text;
adapt.InsertCommand.Parameters.Add("@phoneNumber", SqlDbType.VarChar).Value = textBox7.Text;
adapt.InsertCommand.Parameters.Add("@birthDate", SqlDbType.DateTime).Value = textBox8.Text;
adapt.InsertCommand.Parameters.Add("@startWorkingDate", SqlDbType.DateTime).Value = textBox9.Text;
Con.Open();
adapt.InsertCommand.ExecuteNonQuery();
Con.Close();
我如何讓它工作?
我想問題出在這里:
adapt.InsertCommand.Parameters.Add("@birthDate", SqlDbType.DateTime).Value = textBox8.Text;
您將類型指定為DateTime
類型,並且您將其傳遞給字符串。 嘗試將您的字符串值轉換為DateTime
類型對象,如:
adapt.InsertCommand.Parameters.Add("@birthDate", SqlDbType.DateTime).Value
= Convert.ToDateTime(textBox8.Text);
如果在解析過程中遇到格式異常,則可以查看DateTime.ParseExact
或DateTime.TryParseExact
。 請參閱: 自定義日期時間格式 。
你可以理想地將adapt.InsertCommand設置為一個變量並改為使用它(包括perf和更少的輸入)
假設您保證文本框文本的正確格式,請使用datetime參數更改這樣的行
adapt.InsertCommand.Parameters.Add("@birthDate", SqlDbType.DateTime).Value = DateTime.Parse(textBox8.Text, "yyyy/MM/dd");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.