日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

ORACLE 查询删除表的索引和约束 以及 批量删除表的索引和约束

發布時間:2024/3/26 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ORACLE 查询删除表的索引和约束 以及 批量删除表的索引和约束 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
-- 查詢單表的索引(方式一) select * from all_indexes WHERE table_name='表名'; -- 查詢單表的約束 SELECT u_cons.* FROM user_cons_columns u_cons_cols,user_constraints u_cons WHERE u_cons_cols.constraint_name = u_cons.constraint_name AND u_cons_cols.table_name = '表明';-- 單表刪除約束 alter table 表名 drop constraint '約束名'-- 單表刪除索引 DROP INDEX 索引名-- 批量刪除表中的所有約束 declare s_sql clob := '' ; BEGIN for item in ( SELECT au.CONSTRAINT_NAME FROM user_cons_columns cu,user_constraints au WHERE cu.constraint_name = au.constraint_name AND cu.table_name = 'xx' )loopexecute immediate 'alter table WORKS_REGISTER drop constraint '|| item.CONSTRAINT_NAME;s_sql:='alter table WORKS_REGISTER drop constraint '|| item.CONSTRAINT_NAME;dbms_output.put_line(s_sql);end loop ;commit; END;-- 批量刪除表中的所有索引 declare s_sql clob := '' ; BEGIN for item in ( select * from all_indexes WHERE table_name='xx' )loopexecute immediate 'drop '|| 'INDEX '|| item.INDEX_NAME;s_sql:='drop '|| 'INDEX '|| item.INDEX_NAME;dbms_output.put_line(s_sql);end loop ;commit; END;

查詢沒有添加 主鍵的表
SELECT
*
FROM
user_tables A
WHERE
NOT EXISTS (
SELECT
*
FROM
user_constraints b
WHERE
A .table_name = b.table_name
AND b.constraint_type = ‘P’
);

-- 添加ID主鍵 ALTER TABLE 表名 add constraint PK_ID primary key(字段名); -- 添加唯一索引 CREATE UNIQUE INDEX UI_SERIAL_NUMBER on 表名(字段名); -- 先添加 SERIAL_NUMBER 普通索引 CREATE INDEX IDX_SERIAL_NUMBER ON 表名(字段名); -- 再添加 SERIAL_NUMBER 唯一約束 ALTER TABLE 表名 ADD CONSTRAINT UK_SERIAL_NUMBER UNIQUE(字段名) ENABLE NOVALIDATE; -- 設置字段不為null alter table 表名 modify 字段名 NOT NULL;

總結

以上是生活随笔為你收集整理的ORACLE 查询删除表的索引和约束 以及 批量删除表的索引和约束的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。