pgsql中对索引的操作

查看表中的索引的信息

select * from pg_indexes
where tablename='prm_prom_bill_rule';  
SELECT
    tablename,
    indexname,
    indexdef
FROM
    pg_indexes
WHERE
    tablename = 'prm_prom_bill_cate_brand' ;
或者     select * from pg_statio_all_indexes where relname=‘tbname‘;

 

 设置自增索引的初始值:

select setval('prm_letter_id_seq', 2535);
select setval('t_custom_model_id_seq',1,false);

tablename 中填充需要查看的表的索引的信息。

Create Unique Index prm_prom_bill_rule_id_un On prm_prom_bill_rule(bill_rule_id, bill_id);

创建索引 

 prm_prom_bill_rule_id_un 创建的索引的名字
prm_prom_bill_rule 表的名字
bill_rule_id, bill_id 表中关联的字段
DROP INDEX index;   
index中填充的就为你想要删除的索引的信息
无法删除DBMS为主键约束和唯一约束自动创建的索引
eg:
Create Index prom_rule_id_prm_prom_rule_index On prm_prom_rule(prom_rule_id);

删除索引的方法:

Drop Index idx_tb_user_UNQ Cascade;
Cascade表示级联删除,表示引用这个的地方也会被删除
创建索引可以添加where条件
Create Unique Index idx_tb_user_UNQ On tb_user(login_name,group_id) WHERE delete_flag = '0';
上面的sql表示delete_flag=0的数据才有唯一索引约束。

 

posted @   diligently  阅读(684)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示