Ric*_*den 16 sql sql-server sql-server-2005
我正在尝试在单个排序规则上标准化所有数据库 - Latin1_General_CI_AS(标准排序规则)。我有一些数据库位于 SQL_Latin1_General_CP1_CI_AS 中。
我知道我可以使用 ALTER DATABASE 来更改数据库排序规则,但这只会影响新对象。我的理解是,更改现有列的唯一方法是对每个表中的每一列执行 ALTER COLUMN - 我需要删除并重新创建所有索引才能做到这一点。
我想它看起来像这样:
DROP INDEX indexname ON tablename
GO
ALTER TABLE tablename ALTER COLUMN columname varchar(50) COLLATE Latin1_General_CI_AS NULL
GO
CREATE CLUSTERED INDEX indexname ON tablename (columname ASC)
Run Code Online (Sandbox Code Playgroud)
并对整个数据库中的每个 varchar、char、text、nvarchar、nchar 和 ntext 列重复。那将是一个巨大的SQL 脚本。
有没有更简单的方法来做到这一点,或者任何人都可以建议一种自动创建 SQL 脚本的方法来做到这一点?
| 归档时间: |
|
| 查看次数: |
42819 次 |
| 最近记录: |