SQL 删除索引错误

SQL Server 数据库执行

DROP INDEX 索引名 ON 表名

“  时出现“不允许对索引 ‘索引名‘ 显式地使用 DROP INDEX。该索引正用于 PRIMARY KEY 约束的强制执行”,执行在客户端执行也报类似错误,可以修改语句为在客户端执行成功:

alter table 表名drop constraint 索引;

时间: 2024-08-08 01:28:40

SQL 删除索引错误的相关文章

SQL Server索引进阶:第十二级,创建,修改,删除

在第十级中我们看到了索引的内部结构,在第十一级中我们看到了平衡树结构潜在的负面影响:索引碎片.有了索引内部结构的知识,我们可以检查在执行数据定义语句和数据操作语句的时候,都发生了什么.在本级中我们介绍数据定义语言的三个动词:create,alter和drop.在下一级中,我们介绍数据操作语言的三个动词:insert,update,delete. 创建,修改,删除索引都是索引维护的范围.create,alter,drop作为维护索引的动词,只是因为SQL Server团队认为队友对象的维护应该使用

sql server 2008出现 数据库主体在该数据库中拥有架构,无法删除。 (Microsoft SQL Server,错误: 15138)

在用sql server 2008做数据挖掘时,出现用户无法访问的问题,所以给相应的数据库添加一个登入用户zhang,并赋予相应的权限.在调试时,发现还是存在问题,故想删除这个用户zhang,并新建一个用户.出现错误提示: 数据库主体在该数据库中拥有架构,无法删除. (Microsoft SQL Server,错误: 15138) 解决方案: 先删除此用户对应的架构,然后在删除对应的用户 具体步骤: 1.相应数据库-->安全性-->构架,先删除对应的构架 2.相应数据库-->安全性--&

sql优化实战:从1353秒到135秒(删除索引+修改数据+重建索引)

最近在优化日结存储过程,日结存储过程中大概包含了20多个存储过程. 发现其有一个存储过程代码有问题,进一步发现结存的数据中有一个 日期字段business_date 是有问题的,这个字段对应的类型是varchar,但是存储过程传入参数的类型是char,导致最后结存进去的数据末尾多了几个空格. 比如,应该是'2016-12'的,但现在是'2016-12  '. 为了解决这个问题,要修改这个字段的值,去掉尾部的空格,于是运行如下语句: [sql] view plain copy print? upd

SQL创建删除索引

--创建唯一聚集索引create unique clustered index pk_table1 on table1 (column1) --创建唯一非聚集索引create unique nonclustered index IX_table1_column2 on table1(column2) --创建不唯一非聚集索引create index IX_table1_column1 on table1(column1) --删除索引drop index pk_table1 on table1

SQL Server索引设计 <第五篇>

SQL Server索引的设计主要考虑因素如下: 检查WHERE条件和连接条件列: 使用窄索引: 检查列的选择性: 检查列的数据类型: 考虑列顺序: 考虑索引类型(聚集索引OR非聚集索引): 一.检查WHERE条件列和链接条件列 当一个查询提交到SQL Server时,查询优化器尝试为查询中引用的所有表查找最佳的数据访问机制.下面列出查询优化器针对WHERE和连接的工作方式: 优化器识别WHERE子句和连接条件中包含的列. 接着优化器检查这些列上的索引. 优化器通过从索引上维护的统计确定子句的选

SQL Server索引碎片整理实际操作记录

SQL Server 版本是 2008 R2. 查询数据库索引碎片情况的 SQL 语句(来源): SELECT OBJECT_NAME(ind.OBJECT_ID) AS TableName, ind.name AS IndexName, indexstats.index_type_desc AS IndexType, indexstats.avg_fragmentation_in_percent FROM sys.dm_db_index_physical_stats(DB_ID(), NULL

【译】SQL Server索引进阶第八篇:唯一索引

原文:[译]SQL Server索引进阶第八篇:唯一索引     索引设计是数据库设计中比较重要的一个环节,对数据库的性能其中至关重要的作用,但是索引的设计却又不是那么容易的事情,性能也不是那么轻易就获取到的,很多的技术人员因为不恰当的创建索引,最后使得其效果适得其反,可以说"成也索引,败也索引".     本系列文章来自Stairway to SQL Server Indexes,翻译和整理后发布在agilesharp和博客园,希望对广大的技术朋友在如何使用索引上有所帮助.   唯一

SQL Server索引语法 <第四篇>

从CREATE开始 通过显式的CREATE INDEX命令 在创建约束时作为隐含的对象 随约束创建的隐含索引 当向表中添加如下两种约束之一时,就会创建隐含索引. 主键约束(聚集索引) 唯一约束(唯一索引) 一.CREATE INDEX语法 CREATE INDEX语句所做的事情与其听上去一样-用于在指定表或视图上基于声明的列创建索引: CREATE [UNIQUE] [CLUSTERED | NONCLUSTERED] INDEX <index name> ON <table or vi

[转帖]SQL Server 索引中include的魅力(具有包含性列的索引)

SQL Server 索引中include的魅力(具有包含性列的索引) http://www.cnblogs.com/gaizai/archive/2010/01/11/1644358.html 上个月刚发现sql2016 之前仅支持 索引包含 16个键 (之后支持32个键) 这个月发现 可以 使用include 的方式来处理. 开文之前首先要讲讲几个概念 [覆盖查询] 当索引包含查询引用的所有列时,它通常称为“覆盖查询”. [索引覆盖] 如果返回的数据列就包含于索引的键值中,或者包含于索引的键