0
DECLARE @tmp_tab VARCHAR(20)
SELECT @TMP_TAB = '#TMP_TAB_BANK' + CAST(USER_ID(USER) AS NVARCHAR)
+ CAST(@@SPID AS NVARCHAR)
EXEC('CREATE TABLE ' + @TMP_TAB + (ID INT NULL, NAME VARCHAR NULL)')
//Break point
EXEC('select * from ' + @TMP_TAB)
我在SQL Server 2005中工作。在上面的代码中,我决定为什么命名我的临时表。然后我创建临时表。如果我只运行这些代码,我会收到Commands completed successfully
消息。无法从已成功创建的#temp表中选择
但是,如果我执行的代码来获取数据(当然,我知道这是空的),我得到的最后一行
无效的对象名称#TMP_TAB_BANK157“
为什么不能我从刚创建的表中获取记录?如果临时表没有创建,那我为什么不收到任何警告?