求助,一道关于SQL查询语句的提问。

来源:百度知道 编辑:UC知道 时间:2024/05/17 04:38:12
请各位高手们帮我看一下面查询语句第一个双引号里的一个双引号和一个单引号是什么意思,里面的+name+是什么意思?
locksql="select * from tb_GrUser where Name='"+name+"' and lock=1";
如果能举例说明讲得更详细点就更好了,谢谢各位!

name 是一个变量的名。

单引号,SQL语句,字符的值要用。

比方说要查询 表tb_GrUser。 NAME=哈哈 并且 LOCK=1 的信息
SQL语句
select *from tb_GrUser where Name='哈哈' and lock=1

双引号,是用于拼接SQL语句的 (string 类型拼接)
我吧这句话拆成这3句,你应该能看懂了吧
"select * from tb_GrUser where Name='"
+name+
"' and lock=1"

'"+name+"'作为一个整体,表示一个变量!

"select * from tb_GrUser where Name='" + name + " 'and lock=1"
↑字符串 ↑应该是字符串变量 ↑又1个字符串

1、那么是一个变量,【+】表示连接。
2、假如:name=张三,上面的sql连接起来就是:
select * from tb_GrUser where Name='张三' and lock=1
3、这样就可以动态执行sql了。

---
以上,希望对你有所帮助。

这是个拼接给系统存储过程当做一般语句执行的语句
她的结果用 sp_executesql 字符样式的sql语句 和
exec(字符样式的sql语句)
可以执行 他拼接处的结果输出将会是

select * from tb_GrUser where Name='name变量的值'

因为sql server里面不可以直接输出引号
所以用了两个引号来输出一个引号 之所以你的那段代码有三个引号 是因为其