黑马程序员技术交流社区
标题:
在C#中写sql语句,怎么连接变量
[打印本页]
作者:
靳石磊
时间:
2013-1-23 16:23
标题:
在C#中写sql语句,怎么连接变量
例如,我要配置一个SqlCommand对象,查找name为张三的人的信息:
string name=“张三”;
SqlCommand comm = new SqlCommand("select * from table1where name="+name, conn)
这样写产生错误,那应该怎么写呢?
作者:
黑马刘俊
时间:
2013-1-23 17:31
name的值也是需要用“”来包裹的,你写的sql语句连接出来 的是select * from table1where name=张三; 但是正确的语法应该是select * from table1where name="张三";
所以如果你一定要使用+好来构建字符串的话,要注意引号也要连接进去,大概要写成
SqlCommand comm = new SqlCommand("select * from table1where name="+"\""+name+"\"", conn)
这样连接出来后就是select * from table1where name="张三";
可以试试看
作者:
罗志强
时间:
2013-1-23 17:40
string sql = "select * from table where id=" + name + "and password="+id;
第一段字符串是
"select * from table where id="
然后用+号连接name
然后再用+连接最后面的结尾
作者:
万建华
时间:
2013-1-23 21:01
不会用c#调用数据库,但是还是 顶一个
作者:
潘望
时间:
2013-2-4 22:03
string sql = string.Format(@"select name from table1 where name={0}",name);
先连接数据库在写SQL查询语句,然后new command对象,用里面的ExecuteScalar()看是否返回一行一列的值
作者:
乔培培
时间:
2013-2-5 12:46
在拼接sql字符串的时候,要注意是否加上单引号,也就表示它为字符串类型,如果不加单引号执行会报错
修改一下:"select * from table1where name=‘ " + name + " ' "
一般数值类型不用加单引号,非数值类型的都可以加或必须加!
建议使用参数化的方式 ,可有效防止SQL注入
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2