- 如何用变量代替字段名?
将语句赋给一个varchar 变量,下列语句等价于(假设传进去的@id=’name‘):'select name from 表名'
如果直接执行这个语句,是没用的。@id不会被识别为字段名。
ALTER PROCEDURE 存储过程名 @id varchar(10), AS BEGIN declare @sql varchar(500) set @sql='select ' +@id+' from 表名' exec(@sql) END
- sql语句中如何给varchar类型变量加上' ' ?
sql 里如果要在语句中使用单引号,要在加上一个’转义,如下面的四个''''。
set @sql='select NAME from STUDENTS where ID='''+@id+'''';
- sql语句以加减原变量方式更新变量?
update STUDENTS set SCORE=SCORE+1 where ID=123
- join查询可用于拼接二进制变量
- SqlServer提示找不到存储过程
- 重启数据库试一试(据说是因为SqlServer的客户端和服务器没同步)
- 语句中表名前要加上库名,格式如——[库名]..[表名],exec 后加上括号()
- 一个小坑——存储过程定义的变量顺序决定传进来的值,并不会是根据名称自动判断对应的变量