如何查看在某个表上建立的触发器和约束?

本文提供了一系列 Oracle SQL 语句用于管理表的约束条件和触发器,包括禁用和启用约束,查询触发器状态及操作等。通过这些实用的 SQL 脚本,可以更方便地进行数据库的维护工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SELECT CONSTRAINT_TYPE, CONSTRAINT_NAME, INDEX_NAME FROM USER_CONSTRAINTS

SELECT * FROM USER_CONSTRAINTS T WHERE T.CONSTRAINT_NAME = 'PK_T_ADMINER'
ALTER TABLE T_ADMINER DISABLE CONSTRAINT PK_T_ADMINER;
ALTER TABLE T_ADMINER ENABLE CONSTRAINT PK_T_ADMINER;

ALTER TABLE TABLE_NAME DISABLE CONSTRAINT CONSTRAINT_NAME;


SELECT 'ALTER TABLE '|| TABLE_NAME ||' DISABLE CONSTRAINT '||CONSTRAINT_NAME||';' FROM USER_CONSTRAINTS
SELECT 'ALTER TABLE '|| TABLE_NAME ||' ENABLE CONSTRAINT '||CONSTRAINT_NAME||';' FROM USER_CONSTRAINTS

SELECT * FROM ALL_TRIGGERS

SELECT 'ALTER TRIGGER '|| TRIGGER_NAME ||' ENABLE'||';' FROM ALL_TRIGGERS

SELECT 'ALTER TRIGGER '|| TRIGGER_NAME ||' DISABLE'||';' FROM ALL_TRIGGERS

ALTER TRIGGER TG_UNIT ENABLE;
ALTER TRIGGER TG_UNIT DISABLE;

SELECT 'TABLES=(' FROM DUAL;
SELECT T.TABLE_NAME||',' FROM USER_TABLES T WHERE T.PARTITIONED ='NO';
SELECT ')' FROM DUAL;

--查看表在哪个表空间:
select table_name,TABLESPACE_NAME from user_tables where table_name=upper('xxx');
--查看用户默认表空间:
select username,default_tablespace from dba_users where username=upper('xxx');

--查看所有用户表
select * from user_tables
--查看用户所有触发器
select * from USER_TRIGGERS
--查看用户所有约束条件
select * from user_CONSTRAINTS
--查看用户所有表空间
select * from user_tablespaceS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值