在对象资源管理器中创建表格,但在sys.tables中没有

时间:2017-03-29 10:19:29

标签: sql sql-server

最近我遇到了一个场景,

  1. 我在数据库中创建了一个表。
  2. 刷新对象资源管理器中的表格
  3. 表格出现在列表中
  4. 我使用了查询' select * from sys.tables'并在下拉列表中选择了数据库
  5. 执行查询
  6. 表格不在列表中
  7. 我们正在使用SQL Server 2008 R2,并且在我们的客户端计算机上会出现此问题。可悲的是,我对数据库的历史知之甚少。

    之前有没有人见过这个问题。任何一点帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

终于找到了问题..

问题是因为我们正在使用远程连接。看来SQL查询编辑器会记住连接。因此查询编辑器正在使用一个连接,而Object explorer正在使用不同的连接。它们都没有指向同一台服务器。 因此,当我们使用SSMS创建表时,我们可以看到创建的表,但与查询编辑器一起使用时则不一样。由于两台服务器都有相同的数据库,我们一直认为它是同一台服务器。

要更改查询编辑器的连接,右键单击sql查询编辑器 - >连接 - >更改连接。

通过这个我们改变了查询编辑器的连接。现在,对象资源管理器和查询编辑器都是同步的,我们可以看到创建的表。

快乐的结局!!

@Mortb和@Manngo,再次感谢您的贡献..