求高手Datagrid问题!!急~~ 在datagrid编辑中,我实现了更新行的功能.但是更新的文本框没有进行验证,当输入'等特殊字符的时候,系统就有错误,求高手:如何解决在更新下的用户输入验证问题!谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在DataGrid的UpdateCommand事件处理程序中验证用户的输入,通过才提交数据库 另外,输入单引号导致报错并不是验不验证的问题,而是你的数据访问层没有防止sql注入,而是简单地使用字符串拼凑的方式来写sql,例如string sql = "update table1 set field1='"+ TextBox1.Text +"'",显然,当TextBox1.Text里面有单引号时,这个sql语句便不对了,所以,正确的、标准的操作ado.net的写法是使用Parameter的方式:System.Data.SqlClient.SqlConnection cnn = new System.Data.SqlClient.SqlConnection("连接字符串"); System.Data.SqlClient.SqlCommand cm = new System.Data.SqlClient.SqlCommand(); cm.Connection = cnn; cm.CommandText = "insert into table1 (field1,field2) values(@field1,@field2)"; cm.Parameters.Add("@field1",SqlDbType.Float); cm.Parameters["@field1"].Value = 1; cm.Parameters.Add("@field2",SqlDbType.VarChar); cm.Parameters["@field2"].Value = TextBox2.Text; cnn.Open(); cm.ExecuteNonQuery(); cnn.Close(); 一个笨办法,你可以写js方法,然后在itemdatabound事件里面将该方法和按牛的单击事件绑定同时将几个textbox的clientid传值到前台 .net 缓存中的数据计算 .net 程序里面怎样知道 发布订阅是否成功! 关于Socket,高手求助啊~~ asp.net 导出excel 为什么格式自动转换了??? 设置asp.net里面按扭或超连接背景样式! 求助怎么在.net中显示dwg图,并且如何操作 怎样防止 多个人在同一时刻对同一条记录进行修改? js弹出窗口获取选中值返回值 请问我的程序哪里错了,为什么结果老是“更新出错,错误原因为至少一个参数没有指定值” 请教:关于C#类型转换的问题 global 文件
而是简单地使用字符串拼凑的方式来写sql,
例如string sql = "update table1 set field1='"+ TextBox1.Text +"'",显然,当TextBox1.Text里面有单引号时,这个sql语句便不对了,所以,正确的、标准的操作ado.net的写法是使用Parameter的方式:
System.Data.SqlClient.SqlConnection cnn = new System.Data.SqlClient.SqlConnection("连接字符串");
System.Data.SqlClient.SqlCommand cm = new System.Data.SqlClient.SqlCommand();
cm.Connection = cnn;
cm.CommandText = "insert into table1 (field1,field2) values(@field1,@field2)";
cm.Parameters.Add("@field1",SqlDbType.Float);
cm.Parameters["@field1"].Value = 1;
cm.Parameters.Add("@field2",SqlDbType.VarChar);
cm.Parameters["@field2"].Value = TextBox2.Text;
cnn.Open();
cm.ExecuteNonQuery();
cnn.Close();