gpt4 book ai didi

sql-server - 查找 SQL Server 中所有表的列上的非默认排序规则

转载 作者:行者123 更新时间:2023-12-01 19:57:41 25 4
gpt4 key购买 nike

是否有一个脚本可以用来查找 SQL 目录中所有表中没有排序规则 <database default> 的所有列?

我已经接管了一个遗留系统,并且在一些表中有不同的排序规则,我希望一次性找到所有实例,而不是手动查找。

但是,我不想以编程方式更改排序规则,因为我想逐一检查每个表。

enter image description here

最佳答案

在这里尝试这个脚本:

DECLARE @DatabaseCollation VARCHAR(100)

SELECT
@DatabaseCollation = collation_name
FROM
sys.databases
WHERE
database_id = DB_ID()

SELECT
@DatabaseCollation 'Default database collation'

SELECT
t.Name 'Table Name',
c.name 'Col Name',
ty.name 'Type Name',
c.max_length,
c.collation_name,
c.is_nullable
FROM
sys.columns c
INNER JOIN
sys.tables t ON c.object_id = t.object_id
INNER JOIN
sys.types ty ON c.system_type_id = ty.system_type_id
WHERE
t.is_ms_shipped = 0
AND
c.collation_name <> @DatabaseCollation

它检查数据库默认排序规则,然后查找任何不符合该规则的列。

关于sql-server - 查找 SQL Server 中所有表的列上的非默认排序规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8488534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com