SQL Server 数据库排序规则报错“由于一个或多个对象访问此列,ALTER TABLE ALTER COLUMN fid 失败”解决办法

1、问题描述
(1)业务操作时报错:

(2)调整相关表列的排序规则为Chinese_PRC_CS_AS,无法更改

消息 5074,级别 16,状态 1,第 1 行
对象'CPK_BAS_EQUIPMETKI' 依赖于 列'fid'。
消息 4922,级别 16,状态 9,第 1 行
由于一个或多个对象访问此列,ALTER TABLE ALTER COLUMN fid 失败。
2、解决步骤
(1)先删除主键
alter TABLE [dbo].[CT_BAS_EQUIPMENT] drop CONSTRAINT [CPK_BAS_EQUIPMETKI] ; 
(2)再改排序:
alter table [dbo].[CT_BAS_EQUIPMENT] alter column fid varchar(44) COLLATE Chinese_PRC_CS_AS not null;
(3)再创建主键

(4)检查排序是否正常
3、注意
(1)对主键列排序调整,要在后后面加上not null,否则列会变为null;
(2)把Chinese_PRC_CI_AS改为Chinese_PRC_CS_AS获取语句:
select ' ALTER TABLE '+sys.tables.name+' ALTER COLUMN '+sys.columns.name+' ' + sys.types.name + '('+ cast(sys.columns.max_length as varchar)+')' +' CO
SQL Server 数据库排序规则报错“由于一个或多个对象访问此列,ALTER TABLE ALTER COLUMN fid 失败”解决办法
1、问题描述(1)业务操作时报错:(2)调整相关表列的排序规则为Chinese_PRC_CS_AS,无法更改消息 5074,级别 16,状态 1,第 1 行对象...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇
下一篇



