Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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 2008 SQL Server中的文件组和文件名_Sql Server 2008 - Fatal编程技术网

Sql server 2008 SQL Server中的文件组和文件名

Sql server 2008 SQL Server中的文件组和文件名,sql-server-2008,Sql Server 2008,创建文件组时,同一文件的操作系统文件名和逻辑文件名之间有什么区别?为什么我们需要两个不同的名字 逻辑文件名是所有Transact-SQL语句中用于引用物理文件的名称。逻辑文件名必须符合SQL Server标识符的规则,并且在数据库中的逻辑文件名中必须是唯一的 os\u file\u name是物理文件的名称,包括目录路径。它必须遵循操作系统文件名的规则 因此,逻辑名称基本上是一种方便的抽象: 为在SQL语句中使用而精心设计(更短,遵循SQL友好且独立于FS的命名约定) 只需要是唯一的内部数据库

创建文件组时,同一文件的操作系统文件名和逻辑文件名之间有什么区别?为什么我们需要两个不同的名字

逻辑文件名是所有Transact-SQL语句中用于引用物理文件的名称。逻辑文件名必须符合SQL Server标识符的规则,并且在数据库中的逻辑文件名中必须是唯一的

os\u file\u name是物理文件的名称,包括目录路径。它必须遵循操作系统文件名的规则

因此,逻辑名称基本上是一种方便的抽象:

  • 为在SQL语句中使用而精心设计(更短,遵循SQL友好且独立于FS的命名约定)
  • 只需要是唯一的内部数据库(不需要DB前缀等)