如何对列排序规则进行永久更改

  • 本文关键字:规则 排序 sql sql-server
  • 更新时间 :
  • 英文 :


是否有任何配置或选项可以对列排序规则进行永久更改,这样我就不必到处重复COLLATE了?

以下是我的SQL查询:

select
y.[Key] FieldName,
(select FieldName 
from [dbo].GetFields(z.[Key]) 
where FieldType = y.[Key] COLLATE Chinese_Taiwan_Stroke_CI_AS) COLLATE Chinese_Taiwan_Stroke_CI_AS
from
FieldTableZ z
outer apply 
FieldTableY y

不清楚你在这里想做什么。。要更改整个服务器、数据库的排序规则,还是只更改某些列的排序规则?我会尽力回答所有的问题。一个简单的谷歌搜索"sql server更改数据库排序规则"就会出现以下内容:

  1. 要更改服务器排序规则,请参阅Microsoft的官方文档:

    • 设置或更改服务器排序规则

    如果你想要一个循序渐进的指南,这里是:

    • 安装后更改SQL Server排序规则-Douglas Castilho著
  2. 要更改数据库排序规则,例如:

    ALTER DATABASE CURRENT COLLATE SQL_Latin1_General_CP1_CI_AI

  3. 更改表格列的排序规则:

    • 更改SQL Server数据库排序规则-Paris Polyzos的博客

    也就是说,您可以使用更改列排序规则

    ALTER TABLE [<Table>] ALTER COLUMN [<Column>] <ColumnType> COLLATE <NewCollation>

    如果您使用的是图表,则情况并非如此;图形的内部列不能以这种方式更改。

尽管如此,我猜这些都不适合查询的样子——您在查询中复制了[Key]列(看起来像主键),并试图依赖排序规则的副作用。。顺便说一句,尽量不要让人们只是为你做谷歌搜索的工作。

相关内容

  • 没有找到相关文章

最新更新