Informix 删除主索引或主键

来源:互联网 发布:linux多线程并发 编辑:程序博客网 时间:2024/06/06 02:35

Informix 删除索引或主键

 

 

1、根据网上的做法,发现在systables 中找不到有主键的表

select constrname from sysconstraintswhere tabid in (select tabid from systables where tabname='SYS_COMMINFO001');

 

2、找到SYS_COMMINFO001表的索引为297_665,索引是一串数字,如果直接删除索引,也删除不掉

alter table SYS_COMMINFO001 drop constraint 297_665;

 

使用drop也不可以

drop index 297_665

 

 

3、经过试验,可行的方法是在索引数字前加字母u,然后就可以drop掉了,知道原因的朋友可以做个解释

alter table SYS_COMMINFO001 drop constraint u297_665;

 

4、创建主键/索引

alter table SYS_COMMINFO001 add constraint primary key(TXTID,TXTNO)

 

5、创建一般索引

create  index sys_com001_kv on  sys_comminfo001 (keyvalue)

 

查看数据表锁模式:
在命令行下执行:
dbschema -d 数据库名 -t 表名 -ss
看到lock mode 的值就知道是行级锁还是页级锁;
lock mode page;

改变锁模式(在dbaccess下执行):
页级锁变为行级锁:
alter table tdh lock mode (row);

 

增加列:

ALTER TABLE parasrv ADD (RELEASE_FLAG char(10) DEFAULT 'YES')

原创粉丝点击