不能在具有唯一索引 'dwtxi' 的对象中插入重复键的行
(2009-03-14 14:00:50)
标签:
杂谈 |
分类: SQL Server |
数据库里面如果规定了没有重复,你还能怎么办,
方法1. 利用企业管理器查看、修改和删除索引
方法2. 用系统存储过程查看和更改索引名称
系统存储过程sp_helpindex可以返回表的所有索引信息,其语法形式如下:
sp_helpindex [@objname=]’name’
其中[@objname=]’name’参数用于指定当前数据库中的表的名称。
另外,系统存储过程sp_rename可以用来更改索引的名称,其语法形式如下:
sp_rename[@objname=]'object_name',
[@newname=]'new_name'
例子:
更改employees表中的索引employees_name_index名称为employees_name_ind,其程序清单如下:
Exec sp_rename ‘employees.[employees_name_index]’, ‘employees_name_ind’, ‘index’
方法3. 使用Transact-SQL语句中的DROP INDEX命令删除索引
当不再需要某个索引时,可以将其删除,DROP INDEX命令可以删除一个或者多个当前数据库中的索引,其语法形式如下:
DROP INDEX 'table.index | view.index' [ ,...n ]
其中,table | view用于指定索引列所在的表或索引视图;index用于指定要删除的索引名称。注意,DROP INDEX命令不能删除由CREATE TABLE或者ALTER TABLE命令创建的主键或者唯一性约束索引,也不能删除系统表中的索引。