Informix 删除索引或主键
1、根据网上的做法,发现在systables 中找不到有主键的表
select constrname from sysconstraints where 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')