我如何获取数据库中特定表的排序规则?

时间:2010-02-21 05:57:01

标签: sql sql-server collation

如何获取数据库中特定表的排序规则?是否有可能表中的db具有不同的排序规则?

3 个答案:

答案 0 :(得分:12)

表级别的排序是基于每列的,因此可以使排序规则与数据库不同。如果未在列级别定义排序规则,则默认为数据库排序规则设置。

SQL Server 2000:

SELECT c.name, 
       c.collation 
  FROM SYSCOLUMNS c
 WHERE [id] = OBJECT_ID('your_table_name')

SQL Server 2005 +:

SELECT c.name, 
       c.collation_name
  FROM SYS.COLUMNS c
  JOIN SYS.TABLES t ON t.object_id = c.object_id
 WHERE t.name = 'your_table_name'

答案 1 :(得分:2)

没有表格的整理。

数据库具有默认排序规则(默认为服务器的排序规则)。

数据库的默认排序规则将应用于您添加到表中的任何列,除非您在列级别明确指定排序规则。

答案 2 :(得分:0)

请注意。编写表格脚本时,SSMS可以显示列排序规则。您可以进入“工具”->“选项”。在“ SQL Server对象资源管理器”->“脚本”下,有一个选项可以在编写表脚本时显示排序规则。您可以暂时打开它并编写表脚本,以查看表创建代码(包括列排序规则)。

相关问题