sql-server - .. 和 . 之间的语法差异在 SQL Server 中的 sysobjects 中

标签 sql-server

我在 SQL Server 中看到过类似的情况(针对 master 数据库运行此查询):

select * from tempdb..sysobjects

这似乎返回与以下内容完全相同的结果:

select * from tempdb.sys.objects

我发现双点可以用作 a way to omit the schema name但我没有看到这里遗漏了任何内容,按照这个逻辑,那么 tempdb..objects 将是有效的,而事实并非如此)。

最佳答案

tempdb..objects 将被解释为 tempdb.dbo.objects

两者都是两个不同的系统 View

sys.objects

Contains a row for each user-defined, schema-scoped object that is created within a database, including natively compiled scalar user-defined function.

sys.sysobjects

Contains one row for each object that is created within a database, such as a constraint, default, log, rule, and stored procedure

注意:此 SQL Server 2000 系统表作为向后兼容的 View 包含在内。我们建议您改用当前的 SQL Server 系统 View 。若要查找等效的系统 View 或多个 View ,请参阅将系统表映射到系统 View (Transact-SQL)。 Microsoft SQL Server 的 future 版本将删除此功能。避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序。

关于sql-server - .. 和 . 之间的语法差异在 SQL Server 中的 sysobjects 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37000436/

相关文章:

sql - 从临时表插入表

sql-server - 连接到部署在 Kubernetes 中的 SQL Server Docker 容器时,用户 SA 登录失败

sql - 如何在 SQL Server 中获取此列结果

php - 从 CodeIgniter Active Record 类调用存储过程

c# - 从 SSIS 脚本任务创建对自定义程序集的引用 - vb

sql - 如何在我的SQL Case Statement中添加URL?

sql-server - 带有 VS 2012 和 SQL Server 2012 的 WIndows 8 上的 msnodesql

c# - 是否可以将我的 ML.Net 模型存储在我的 MSSQL 数据库中?

sql-server - 选择特定范围内的随机日期

SQL Server 2016 GROUP BY + HAVING 只能通过 JOIN 获取不同记录