sql – #temp_table vs user.#temp_table sybase_iq

我想知道#temp_table和user之间有什么区别.#temp_table

 -- 1) #Tem_table

  create table #temp_table
   ( id integer null);

 select * from #temp_table  -- find

select * from sysobjects where name = '#temp_table'-- not found

– 关闭我的客户

 select * from #temp_table -- not found

--2) user.#temp_table
 create table user.#temp_table
   ( id integer null);

  select * from user.#temp_table  -- found


 select * from sysobjects where name = '#temp_table'  --  found

– 关闭我的客户

  select * from sysobjects where name = '#temp_table'  -- still exist

我的主要问题是,为什么

 select * from sysobjects where name = '#temp_table'

什么都不返回,并与用户.

  select * from sysobjects where name = '#temp_table'

返回信息.

最佳答案 添加user_name时.#Table_name Sybase自动忽略#.你在创建什么是普通用户表.事实上,如果你检查它

 select * from sysobjects where name = '#temp_table'

类型应该是’U’,这意味着你创建了一个user table = not temporary table.

最诚挚的问候,恩里克

点赞