2017-06-22 73 views
0

我在ssms中打开一个新的查询并创建一个全局临时表。然后我在ssms中打开一个新的查询窗口,并写入sql以在这些字段中插入数据。但在新的查询窗口中,智能感知不识别临时表。 SQL工作正常,数据被插入到临时表中,我可以使用临时表,但没有智能感知。我可以返回到创建表的原始查询窗口,并且智能感知工作正常。我尝试过清爽的智能感知,它不起作用。任何建议将不胜感激。intellisense看不到全局临时表

表的代码是

CREATE TABLE ##UserInfo 
(

    [UserId] int NOT NULL IDENTITY (1, 1), 
    [strEmail] varchar(50) NULL, 
    [strLastName] varchar(50) NULL, 
    [strFirstName] varchar(50) NULL, 

) 

插入代码

insert into ##Userinfo(strLastName,strFirstName) 

select distinct POC_DATA.POC_LNAME, POC_DATA.POC_FNAME 
from POC_DATA 

大胆的是部分智能感知在不同的查询窗口

+1

本机智能感知不适用于临时表,并且绝对不会使用全局临时表。请记住,全局临时表是邪恶的,它们会导致并发性的各种问题。 –

+2

您是否看到过任何文档指出智能感知应该识别在另一个查询窗口中编码的全局临时表?这听起来像我预期的行为。 –

回答

1

迄今为止唯一的“绝招”我不承认能够想出的是在一个永远不会执行的块中包含“CREATE TABLE”命令,但intellisense会这样看待:

IF 1=0 
BEGIN 
    CREATE TABLE ##UserInfo (
     [UserId] int NOT NULL IDENTITY (1, 1), 
     [strEmail] varchar(50) NULL, 
     [strLastName] varchar(50) NULL, 
     [strFirstName] varchar(50) NULL, 
    ); 
END 

如果您可以放入评论中,但唉,智能感知忽略了这一点会很好。