SQL - 无效的对象名称

问题描述 投票:0回答:5

以下是了解发生情况的步骤(我使用的是 Microsoft SQL Server Management Studio 2017):

  1. 我将 Excel 文件导入为表格
  2. 我将我的桌子重命名为
    dbo.export
  3. 为了测试,我创建了一个新查询并简单地编写了语句
    SELECT * FROM dbo.export
    - 它运行良好
  4. 我保存我的查询
  5. 我关闭SSMS
  6. 我重新打开 SSMS 并打开我的查询
  7. 当我现在尝试执行查询时,它给出了错误:

消息 208,级别 16,状态 1,第 1 行。对象名称“dbo.export”无效

我没有做任何改变。我的代码现在突然不起作用了。 SQL Server 是否以某种方式改变了我的表的对象类型?我真的不知道出了什么问题,因为我什么也没做。

sql sql-server
5个回答
4
投票

您可能位于主数据库中。 选择 SSMS 中显示“master”的数据库:

或者在查询中使用数据库的名称,如下所示:

DBNAME.dbo.export

或者在查询的开头输入

USE DBNAME;

然后继续您的查询

SELECT * FROM export;


1
投票

您必须已创建用于导入 Excelsheet 的数据库。确保运行查询时选择相同的数据库:

在上面的示例中,

AdventureWorks2012
是选定的数据库。

或者,您可以在查询中包含数据库名称:

SELECT * FROM myDbName.dbo.export

1
投票

您可以在第一行使用数据库,然后使用您的选择查询:

USE databaseName;

SELECT * FROM export;


1
投票

当您关闭查询时,默认数据库将更改为 master 数据库。

每次打开查询时,都应该选择数据库。选择以下方式之一。

1) 从 SSMS 菜单顶部工具栏的组合框中选择您的数据库。

2) 只需在 T-SQL 语句之前写入此命令即可。

 USE 'place your database name'

0
投票

刚刚解决了我的问题

  1. 包括数据库名称和表名称,即 select * from databasename.dbo.tablename

以上应该可以解决问题👌

© www.soinside.com 2019 - 2024. All rights reserved.