首页 > 解决方案 > 如何删除这种类型的表名 [someprefix].table

问题描述

我有一个组织的数据库,其中所有表都如下所示:EMPRE01.table1 EMPRE01.table2 等。 在此处输入图像描述

如果我输入这个查询:SELECT * FROM sysobjects WHERE xtype='U' 我会得到这个结果作为表名:table1,table2 但是如果我尝试这个查询:SELECT * FROM table1只有当我这样输入时它才会起作用:SELECT * FROM EMPRE01.table1

如何将数据库转换为“正常”模式?

标签: sqlsql-serversmss

解决方案


当您键入查询时:

SELECT * FROM table1

它将搜索为dbo.table1. 因为,因为dbo是默认模式。您需要明确说明架构名称:

所以,

SELECT * FROM EMPRE01.table1

注意:这假设查询正在使用相同的数据库。


推荐阅读