解释一段SQL代码?

来源:百度知道 编辑:UC知道 时间:2024/06/24 15:59:29
set @sql='set nocount on select ''insert '+@tablename+'('+@column+') values(''as ''--'','+@columndata+','')'' from '+@tablename

print '--'+@sql
exec(@sql)
我很菜的,望各位大侠们给我详细的解答,顺便解释下面的一段代码,谢谢!
DECLARE @vlSalary money;
DECLARE @SQLString nvarchar(500);

SET @vlSalary = 72500;

SET @SQLString =
'SELECT * FROM 北风贸易.dbo.飞狐工作室 WHERE 目前薪资 = ' +
CAST(@vlSalary AS nvarchar(10));
EXEC (@SQLString);
SET @vlSalary = 48742;
SET @SQLString =
'SELECT * FROM 北风贸易.dbo.飞狐工作室 WHERE 目前薪资 = ' +
CAST(@vlSalary AS nvarchar(10));
EXEC (@SQLString);

我的问题已经解决了,谢谢你们的回答。

第一个,只是把一些sql语句赋值给了一个变量,然后执行了这个变量,把变量取消意思就很明白了
不过看你这个语句好像不通顺呢,你可以在查询分析器运行一下,看看print在下面空白处的语句是什么样子的,那个就是sql真正运行的语句

你最上面的sql语句是用什么语言写的啊?VB吗?是完整的吗?我没用过
好乱啊! 哎!我也很菜 看不懂 帮你顶一下吧
貌似是存储过程

//前面有@代表的是参数
set @sql='set nocount on select ''insert '+@tablename+'('+@column+') values(''as ''--'','+@columndata+','')'' from '+@tablename
//print 表示输出
print '--'+@sql
//执行
exec(@sql)

//定义变量
DECLARE @vlSalary money;
DECLARE @SQLString nvarchar(500);
//赋值
SET @vlSalary = 72500;
// CAST(@vlSalary AS nvarchar(10)) 类型转换

SET @SQLString =
'SELECT * FROM 北风贸易.dbo.飞狐工作室 WHERE 目前薪资 = ' +
CAST(@vlSalary AS nvarchar(10));
//执行
EXEC (@SQLString);

SET @vlSalary = 48742;
SET @SQLString =
'SELECT * FROM 北风贸易.dbo.飞狐工作室 WHERE 目前薪资 =