Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 什么是SQL Server模块?_Sql Server - Fatal编程技术网

Sql server 什么是SQL Server模块?

Sql server 什么是SQL Server模块?,sql-server,Sql Server,我今天刚看到系统视图sys.sql\u modules。什么是模块与DB对象?视图返回一列,其中最显著的是包含定义文本的列,该列由sys返回。syscomments模块是函数、过程、队列和触发器。这些模块调用对象。这就是我从这篇描述“执行为”的文章中所理解的: 是T-SQL语句块组成了存储过程、存储函数、触发器或视图定义 从“创建过程”部分的“联机丛书”中: 获取有关存储的 显示定义的过程 Transact-SQL存储过程的, 使用sys.sql\u模块目录视图 在该过程所在的数据库中 存在 在

我今天刚看到系统视图
sys.sql\u modules
。什么是模块与DB对象?视图返回一列,其中最显著的是包含定义文本的列,该列由sys返回。syscomments

模块是函数、过程、队列和触发器。这些模块调用对象。这就是我从这篇描述“执行为”的文章中所理解的:


是T-SQL语句块组成了存储过程、存储函数、触发器或视图定义

从“创建过程”部分的“联机丛书”中:

获取有关存储的 显示定义的过程 Transact-SQL存储过程的, 使用sys.sql\u模块目录视图 在该过程所在的数据库中 存在

在sys.sql_模块中,您可以找到实际的T-sql代码


Marc

在SQL Server中,模块是一个独立的对象,包含SQL批处理,例如视图、表值函数、存储过程、触发器或标量函数。SQL对象是一个更全面的术语,它包括一些包含SQL表达式的术语,如check或default约束。在SQLServer2005之前,模块通常被称为“例程”,但我认为这两个术语可以互换使用

表构建脚本不存储在SQL Server中,因为可以轻松地单独更改表的组件。因此,它被视为对象而不是模块。
不被视为模块的典型对象包括系统表、默认约束、外键约束、服务队列、检查约束、用户表、主键约束、内部表和唯一约束

列不被视为对象。索引也是如此


是的,这比一开始想象的要复杂得多。

当我想得到执行命令的详细解释时,我遇到了这个问题。我想深入理解如何阅读命令的t-sql帮助,并意识到我不知道模块的含义

我只想将这些添加到sql模块列表中:

  • 系统存储过程
  • 用户定义的存储过程
  • CLR存储过程
  • 标量值用户定义函数
  • 或扩展存储过程
执行Transact-SQL批处理中的命令字符串或字符串,或执行以下模块之一:系统存储过程、用户定义存储过程、CLR存储过程、标量值用户定义函数或扩展存储过程。EXECUTE语句可用于向链接服务器发送传递命令。此外,可以显式设置执行字符串或命令的上下文。可以使用WITH result SETS选项定义结果集的元数据


正是这一页让我首先提出了我的问题。它告诉我数据库中有各种各样的模块。我一直都知道数据库中有各种各样的对象。“模块”从哪里来?