下面的代码在字符串转换为时间类型是出错为什么那?
protected void cmdSaveExi_Click(object sender, ImageClickEventArgs e){
cn.Open();
SqlCommand cmd = new SqlCommand("insert1", cn);
cmd.CommandType = CommandType.StoredProcedure;
//添加参数
SqlParameter dateaa1 = cmd.Parameters.Add("@time", SqlDbType.DateTime, 8);
dateaa1.Value = TextBox6.Text;
SqlParameter dateaa2 = cmd.Parameters.Add("@compact_numbe", SqlDbType.NVarChar, 50);
dateaa1.Value = TextBox1.Text;
SqlParameter dateaa3 = cmd.Parameters.Add("@list_number", SqlDbType.NVarChar, 50);
dateaa3.Value = TextBox2.Text;
SqlParameter dateaa4 = cmd.Parameters.Add("@client_name", SqlDbType.NVarChar, 50);
dateaa4.Value = TextBox3.Text;
SqlParameter dateaa5 = cmd.Parameters.Add("@print_name", SqlDbType.NVarChar, 50);
dateaa5.Value = TextBox4.Text;
SqlParameter dateaa6 = cmd.Parameters.Add("@feilin_intime", SqlDbType.DateTime);
dateaa6.Value = Convert.ToDateTime(TxtTime2.Text);
SqlParameter dateaa7 = cmd.Parameters.Add("@print_time ", SqlDbType.DateTime);
dateaa7.Value = Convert.ToDateTime(TxtTime3.Text);
SqlParameter dateaa8 = cmd.Parameters.Add("@make_time ", SqlDbType.DateTime);
dateaa8.Value =Convert.ToDateTime( TxtTime4.Text);
SqlParameter dateaa9 = cmd.Parameters.Add("@end_time ", SqlDbType.DateTime);
dateaa9.Value =Convert.ToDateTime( TextBox7.Text);
SqlParameter dateaa10 = cmd.Parameters.Add("@note", SqlDbType.NVarChar, 50);
dateaa10.Value = TextBox5.Text;
cmd.ExecuteNonQuery();//类型转换的时候总是出错!
cn.Close();
this.Response.Redirect("Default.asps");
那位高手可以帮忙改一下多谢了!
--------------------编程问答-------------------- 看看TxtTime2.Text这些都是什么 --------------------编程问答--------------------
DateTime.Parse(TxtTime3.Text.Trim());
TxtTime3.Text.Trim()) 里的内容最好先验证一下!!!!! --------------------编程问答-------------------- 再看看你数据库字段的属性是什么。还有就是你存储过程是否正确。 --------------------编程问答-------------------- 看看TxtTime2.Text这些都是什么
都是 文本框啊!
下面是存储过程;
CREATE PROCEDURE insert1
@time datetime,
@compact_number nvarchar (50),
@list_number nvarchar (50),
@client_name nvarchar (50),
@print_name nvarchar (50),
@feilin_intime datetime ,
@print_time datetime ,
@make_time datetime ,
@end_time datetime,
@note nvarchar (50)
as
insert into info_table (time,compact_number,list_number,client_name,print_name,feilin_intime,print_time,make_time,end_time,note )
values ( @time, @compact_number, @list_number, @client_name, @print_name ,@feilin_intime , @print_time ,@make_time , @end_time , @note )
GO --------------------编程问答-------------------- >>都是 文本框啊!
你如果在文本框输入abcd的时候是无法保存到datetime类型的字段的,时间输入最好用datetimepicker控件 --------------------编程问答-------------------- 知道是文本框
我们想知道你文本框的内容
你转化可能是格式错误 --------------------编程问答-------------------- 我看是你的TEXT根本就不是时间类型来的。。用time控件吧。。。 --------------------编程问答-------------------- 不是time控件也得做个正则来限制一下啊。要是输入的格式得的话还是可以转换的。 --------------------编程问答-------------------- 我就找不到时间控件啊 ,我在vs2005里面的啊 ,好像就没有啊!
--------------------编程问答-------------------- 工具箱里面
DateTimePicker控件
补充:.NET技术 , C#