Sql server `无效的对象名称`除非我在SQL Server 2008查询中指定了数据库名称

Sql server `无效的对象名称`除非我在SQL Server 2008查询中指定了数据库名称,sql-server,Sql Server,直到今天,我还能够在不使用[databaseName].[dbo].[fieldName]语法的情况下运行查询。突然间,如果我使用select*from myTable我会得到一个无效对象的错误。我想不出昨天和今天关机之间发生了什么事。有人知道这件事吗 Msg 208, Level, 16, State 1 Line 1 Invalid object name 'mytable' 直到今天,我才不得不在查询中包含数据库名称。此SQL Server实例没有打开其他连接,也没有其他用户。我想您指的

直到今天,我还能够在不使用
[databaseName].[dbo].[fieldName]
语法的情况下运行查询。突然间,如果我使用
select*from myTable
我会得到一个
无效对象的错误。我想不出昨天和今天关机之间发生了什么事。有人知道这件事吗

Msg 208, Level, 16, State 1 Line 1
Invalid object name 'mytable'

直到今天,我才不得不在查询中包含数据库名称。此SQL Server实例没有打开其他连接,也没有其他用户。

我想您指的是从[databaseName].[dbo].[mytable].

以下是一些可能需要注意的事项:

  • 确保您处于正确的数据库上下文/目录中(即
    使用[databasename]
    ,或从SSMS中的
    可用数据库
    下拉列表中选择正确的数据库)

  • 如果数据库中有区分大小写的排序规则,请确保查询中的对象名称与大小写完全匹配
  • 检查此数据库上用户的默认架构是否未更改。尽管默认模式通常是
    [dbo]
    ,但它可以更改
编辑:更多想法:

  • 执行
    选择DB_NAME()
    查看当前数据库名称
  • 检查是否有人完全删除了表或视图(例如,从目标数据库中删除),运行:


我想您指的是一个形式为
的查询,从[databaseName].[dbo].[mytable]

以下是一些可能需要注意的事项:

  • 确保您处于正确的数据库上下文/目录中(即
    使用[databasename]
    ,或从SSMS中的
    可用数据库
    下拉列表中选择正确的数据库)

  • 如果数据库中有区分大小写的排序规则,请确保查询中的对象名称与大小写完全匹配
  • 检查此数据库上用户的默认架构是否未更改。尽管默认模式通常是
    [dbo]
    ,但它可以更改
编辑:更多想法:

  • 执行
    选择DB_NAME()
    查看当前数据库名称
  • 检查是否有人完全删除了表或视图(例如,从目标数据库中删除),运行:


发布您得到的实际查询和实际错误,以便我们可以帮助您。您使用的是databaseName,对吗?发布您得到的实际查询和实际错误,以便我们可以帮助您。您使用的是databaseName,对吗?架构没有更改,区分大小写也没有更改。我不确定你对数据库上下文/目录的确切意思。我的笔记本电脑上有一个糟糕的触摸板,我使用了错误的数据库。在运行查询的execute按钮的正左边,它有一个SQL Server上的数据库列表,那个东西叫什么?这就是我的问题所在。谢谢:)架构没有改变,区分大小写也没有改变。我不确定你对数据库上下文/目录的确切意思。我的笔记本电脑上有一个糟糕的触摸板,我使用了错误的数据库。在运行查询的execute按钮的正左边,它有一个SQL Server上的数据库列表,那个东西叫什么?这就是我的问题所在。谢谢:)
Select * from sysobjects where name = 'myobject' 
OR
Select * from sys.tables where name = 'mytable' 
OR
Select * from INFORMATION_SCHEMA.TABLES