构造的SQL语句里面包含‘字符,如何处理呢 SQL = "insert into ask (que,que1 ) values ('" + ask.Text + "','" + TextBox1.Text + "')";TextBox1文本里包括’字符,SQL出错,咋办呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 AOD.net 参数比如 public DataRow 仓库信息(string 仓库编码) { using (SQLBase MyBase = new SQLBase(Server.ERPLink)) { SqlParameter[] arrParameter = new SqlParameter[1]; arrParameter[0] = new SqlParameter("@仓库编码", SqlDbType.VarChar, 20); arrParameter[0].Value = 仓库编码; return MyBase.ReturnDataRow("select * from Warehouse where cWhCode=@仓库编码", arrParameter); } } 将SQL变量参数化用sqlParameter或者将该字符替换掉。 SQL = "insert into ask (que,que1 ) values ('" + ask.Text.Trim().ToString() + "','" + TextBox1.Text.Trim().ToString() + "')"; SQL = @"insert into ask (que,que1 ) values ('" + ask.Text + "','" + TextBox1.Text + "')"; 也可以用参数 string sqlStr = "insert into ask (que,que1 ) values (@ask,@text1)"; SqlParameter[] _param ={ new SqlParameter("@ask",SqlDbType.DateTime), new SqlParameter("@text1",SqlDbType.DateTime) }; _param[0].Value = ask.Text; _param[1].Value = TextBox1.Text; SqlHelper.ExecuteNonQuery(Conn, CommandType.Text, sqlStr ,_param);PS:我用的是SqlHelper TextBox1.Text.Replace("'","''")在SQL语句之前 "insert into ask (que,que1 ) values ('" + ask.Text.Replace("'","") + "','" + TextBox1.Text.Replace("'","") + "')"; 1.将字符串中单引号替换2.参数化用sqlParameter建议楼主少用拼SQL的方式,容易出错,效率也不高. 直接先去掉’ SQL = @"insert into ask (que,que1 ) values ('" + ask.Text + "','" + TextBox1.Text + "')"; 恩~如果是直接拼接的SQL语句要把1个单引号替换成2个单引号。如果是使用命令参数的非动态拼接的SQL就不用替换了。如果是使用命令参数的动态拼接的SQL还是要把1个单引号替换成2个单引号。 虽然上面都说了,但对于你来说应该还是这个 TextBox1.Text.Replace("'","''") 最简单 .NET 调用PB 的DLL 出错 System.Diagnostics.Process.Start(fileUrl)关于打开文件类发布后提示登录失败: 未知的用户名或错误密码。 GridView 控件如何实现 单元格变色 html 如何赋值.在.Net 里面 求简单论坛源代码。 英语和技术双优的帮我看看, 这个问题楼主是怎么解决的?谢谢 datagrd 的itemtemplate的的值如何用一个codebehind里的函数进行再次操作? 高手指点!!! win xp 不能浏览本地aspx网页!! 帮助!!!! session 时间问题?? 求这样一个代码 button无法触发click事件
{
using (SQLBase MyBase = new SQLBase(Server.ERPLink))
{
SqlParameter[] arrParameter = new SqlParameter[1];
arrParameter[0] = new SqlParameter("@仓库编码", SqlDbType.VarChar, 20);
arrParameter[0].Value = 仓库编码; return MyBase.ReturnDataRow("select * from Warehouse where cWhCode=@仓库编码", arrParameter);
}
}
ask.Text.Trim().ToString() + "','" + TextBox1.Text.Trim().ToString() + "')";
ask.Text + "','" + TextBox1.Text + "')"; 也可以用参数 string sqlStr = "insert into ask (que,que1 ) values (@ask,@text1)"; SqlParameter[] _param ={
new SqlParameter("@ask",SqlDbType.DateTime),
new SqlParameter("@text1",SqlDbType.DateTime)
};
_param[0].Value = ask.Text;
_param[1].Value = TextBox1.Text;
SqlHelper.ExecuteNonQuery(Conn, CommandType.Text, sqlStr ,_param);PS:我用的是SqlHelper
在SQL语句之前
ask.Text.Replace("'","") + "','" + TextBox1.Text.Replace("'","") + "')";
2.参数化用sqlParameter建议楼主少用拼SQL的方式,容易出错,效率也不高.
SQL = @"insert into ask (que,que1 ) values ('" +
ask.Text + "','" + TextBox1.Text + "')";
恩~
如果是直接拼接的SQL语句要把1个单引号替换成2个单引号。
如果是使用命令参数的非动态拼接的SQL就不用替换了。
如果是使用命令参数的动态拼接的SQL还是要把1个单引号替换成2个单引号。