T-SQL中SELECT和SET有什么区别

我正在处理执行一些动态sql的存储过程.这是我在 4GuysFromRolla.com上找到的例子
CREATE PROCEDURE MyProc
  (@TableName varchar(255),@FirstName varchar(50),@LastName varchar(50))
AS

    -- Create a variable @sqlStatement
    DECLARE @sqlStatement varchar(255)

    -- Enter the dynamic sql statement into the
    -- variable @sqlStatement
    SELECT @sqlStatement = "SELECT * FROM " +
                   @TableName + "WHERE FirstName = '"
                   + @FirstName + "' AND LastName = '"
                   + @LastName + "'"

    -- Execute the sql statement
    EXEC(@sqlStatement)

如果您注意到,他们使用的是SELECT intead of SET.我不知道你能做到这一点.有人可以向我解释2之间的区别吗?我一直以为SELECT只是为了选择记录.

解决方法

SELECT是ANSI,SET @LocalVar是MS T-sql

SELECT允许多个assignents:例如SELECT @foo = 1,@ bar = 2

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...