二、数据表管理:

1.ALTER TABLE Table_Name ADD Column_Name TYPE[(SIZE)] [NOT NULL] [DEFAULT n];
SQL> alter table SYS.USER_TAB add sex_info char(10) not null;
2.ALTER TABLE Table_Name DROP COLUMN Column_Name;
SQL> alter table SYS.USER_TAB drop column sex_info;
3.ALTER TABLE Table_Name MODIFY Column_Name TYPE[(SIZE)];
SQL> alter table SYS.USER_TAB modify sex_info varchar2(10);
4.ALTER TABLE Table_Name RENAME COLUMN Column_Name_old TO Column_Name_New;
SQL> alter table SYS.USER_TAB rename column sex_info to address;
5.ALTER TABLE Table_Name RENAME TO Table_Name_New; → RENAME Table_Name TO Table_Name_New;
SQL> alter table SYS.USER_TAB rename to SYS.USER_INFO;
ERROR at line 1:
ORA-14047: ALTER TABLE|INDEX RENAME may not be combined with other operations
--> SQL> alter table SYS.USER_TAB rename to USER_INFO;
6.ALTER TABLE Table_Name MOVE [TABLESPACE Tablespace_Name];
ROWID(Change) --> USER_INDEXES.STATUS → UNUSABLE:
SQL> ALTER INDEX Index_Name REBUILD [ONLINE] [TABLESPACE Tablespace_Name];
7.ALTER TABLE Table_Name ENABLE/DISABLE ROW MOVEMENT;
# ASSM(AUTO SEGMENT SPACE MANAGEMENT).
8.COMMENT ON TABLE/COLUMN ... IS ...
SQL> COMMENT ON TABLE user_info IS 'USERINFO'; 
SQL> COMMENT ON COLUMN user_info.deptid IS 'DEPARTMENT_ID'; 
SQL> select * from USER_TAB_COMMENTS where table_name='USER_INFO';
SQL> select * from USER_COL_COMMENTS where table_name='USER_INFO';

三、Constraint_Management:
1.PRIMARY KEY:
SQL> ALTER TABLE user_info ADD [CONSTRAINT Constraint_Name] PRIMARY KEY(userid);
SQL> select constraint_name,column_name from USER_CONS_COLUMNS where table_name='USER_INFO';
SQL> ALTER TABLE user_info DROP CONSTRAINT SYS_C005900;
SQL> ALTER TABLE user_info DROP PRIMARY KEY KEEP INDEX; [CASCADE]
2.FOREIGN KEY:
SQL> ALTER TABLE user_info ADD [CONSTRAINT Constraint_Name] 
FOREIGN KEY(deptid) REFERENCES dept_info(deptid) [ON DELETE CASCADE];
# ON DELETE [Cascade | Set Null | No Action(default)];
SQL> ALTER TABLE user_info DROP CONSTRAINT ... 
==> SQL> ALTER TABLE dept_info DROP PRIMARY KEY CASCADE; 
3.CHECK CONSTRAINT:
SQL> ALTER TABLE user_info ADD [CONSTRAINT Constraint_Name] CHECK(sex in ('Woman','Man'));
4.UNIQUE CONSTRAINT:
SQL> ALTER TABLE dept_info ADD CONSTRAINT uq_deptinfo_name UNIQUE(deptname);
5.CONSTRAINT STATUS:
# ENABLE/DISABLE and VALIDATE/NOVALIDATE:
SQL> ALTER TABLE dept_info RENAME CONSTRAINT uq_dept_info TO uq_deptinfo_name; 
SQL> ALTER TABLE user_info ENABLE/DISABLE CONSTRAINT SYS_C005908;
SQL> ALTER TABLE dept_info DISABLE PRIMARY KEY CASCADE; → FOREIGN_KEY.
SQL> ALTER TABLE dept_info ADD/MODIFY [CONSTRAINT Constraint_Name] PRIMARY KEY
     ENABLE/DISABLE VALIDATE/NOVALIDATE;
# [NOT] DEFERRABLE INITIALLY [DEFERRED|IMMEDIATE]:
SQL> ALTER TABLE user_info ADD/MODIFY CONSTRAINT fk_emp_info
FOREIGN KEY(deptno) REFERENCES dept(deptno)
DEFERRABLE INITIALLY DEFERRED; --DEFERRED(COMMIT,CHECK)/IMMEDIATE.
--DEFERRABLE → SET CONSTRAINTS ...
SQL> ALTER TABLE user_info ADD CONSTRAINT pk_user_id PRIMARY KEY(userid) DEFERRABLE; 
SQL> SET CONSTRAINTS Constraint_Name/All IMMEDIATE/DEFERRED;
6.EXCEPTIONS INTO EXCEPTIONS:
SQL> @ ?/rdbms/admin/utlexcpt.sql /* ?/rdbms/admin/utlexcpt1.sql */.
SQL> ALTER TABLE user_info ENABLE PRIMARY KEY EXCEPTIONS INTO EXCEPTIONS; 
SQL> SELECT * FROM EXCEPTIONS;
DISABLE CONSTRAINT → (2)INSERT/UPDATE INTO...
ENABLE...EXCEPTIONS INTO EXCEPTIONS → (4)SELECT * FROM EXCEPTIONS;
DELETE FROM ...WHERE ROWID...;
7.DBA_/ALL_/USER_CONSTRAINTS|DBA_/ALL_/USER_CONS_COLUMNS:
SQL> SELECT constraint_name,constraint_type,status,deferrable,deferred 
FROM USER_CONSTRAINTS WHERE table_name='USER_INFO';
CONSTRAINT_NAME CONSTRAINT_TYPE STATUS          DEFERRABLE      DEFERRED
--------------- --------------- --------------- --------------- ----------
SYS_C005905     C               ENABLED         NOT DEFERRABLE  IMMEDIATE
SYS_C005908     R               ENABLED         NOT DEFERRABLE  IMMEDIATE
Type of Constraint Definition:
C:(check constraint on a table) | P:(primary key) | U:(unique key) | R:(referential integrity) 
V:(with check option, on a view) | O:(with read only, on a view).
SQL> SELECT ucc.column_name,ucc.constraint_name,uc.constraint_type,uc.status 
FROM USER_CONSTRAINTS uc,USER_CONS_COLUMNS ucc 
WHERE uc.TABLE_NAME = ucc.table_name AND uc.CONSTRAINT_NAME = ucc.constraint_name 
AND ucc.table_name = 'USER_INFO';

转载于:https://blog.51cto.com/07610119/1169063

Oracle数据表和Constraint管理相关推荐

  1. python使用pandas基于时间条件查询多个oracle数据表

    python使用pandas基于时间条件查询多个oracle数据表 目录 python使用pandas基于时间条件查询多个orcale数据表 #orcale数据连接

  2. oracle数据表转换为mysql数据表

    oracle数据表转换为mysql数据表,或者反过来,我们可以借助navica的工具 1.打开navicat的工具->数据传输 2.选择源数据库以及目标数据库 目标可以选择数据库也可以选择文件, ...

  3. oracle导入表无反应,EZDML无法导入oracle数据表的解决方法

    EZDML无法导入oracle数据表的解决方法 EZDML无法导入oracle数据表的解决方法 1.配置好oracle连接,进行导入数据表时报错:sql*net not properly instal ...

  4. Oracle数据表导入导出_数据迁移用

    0.背景:突然接到居家办公的通知,工作用数据全部在内网,需要全部拷出带走,最大的单个表3.7G左右.根据往常经验将Oracle库中表导出为xlsx(方便与同事沟通使用),发现效率太低,且受制于数据量太 ...

  5. Oracle 数据库表空间的管理

    表空间管理概述 1.表空间分类 按构成文件 大文件表空间:只能包含1个大文件(最大尺寸为128 TB) 小文件表空间:可包含多个数据文件(默认) 按表空间用途:系统表空间.撤销表空间.临时表空间.数据 ...

  6. Oracle数据表误删恢复历险记

    记录一个Oracle生产环境误删数据表数据的经历,曾经将该经历保存在ITPUT的草稿里,结果今天看不到了,特再此重新记录一次,给自己长点教训,特此留念 那是在几个月前,有次去客户生产环境做运维操作,结 ...

  7. oracle 如何形成死锁,Oracle数据表中的死锁情况解决方法

    在进行数据库管理的过程中,经常会出现数据表被用户的一些不合理操作而导致表被锁定的情况,以下主要介绍如何查找哪些表被哪个用户所锁定,以及如何解除锁定: 1.查找被锁定的表: select object_ ...

  8. Oracle数据表创建规则

    写在前边: 规范是一种习惯,在Oracle数据库中笔者认为表中的字段命名规范需要引起注意,当考虑使用SSM作为框架的时候,Mybatis 的逆向工程能够根据数据库表名和数据库名字段名自动生成pojo类 ...

  9. 如何创建oracle数据表空间,oracle创建数据库/表空间

    ||||||||||||||||||||||||简略的说|||||||||||||||||||||||||||| 以管理员身份登录: 1.首先,创建(新)用户: create user usernam ...

最新文章

  1. 【Android 逆向】Android 进程注入工具开发 ( 注入代码分析 | 获取 linker 中的 dlopen 函数地址 并 通过 远程调用 执行该函数 )
  2. 02-JDBC学习手册:JDBC编程步骤【重点重点】
  3. jpa语法错误_JPA陷阱/错误
  4. laragon环境更新安装新的php版本操作方法
  5. 无法定位程序输入点adddlldirectory 于动态_小程序能力只能“单身”?“乐高”组合玩法了解一下...
  6. ROS的学习(十九)用rosserial创建一个subscriber
  7. AOP与自定义注解与反射
  8. ILSpy c#反编译工具,附下载地址
  9. java jsp分页_jsp实现分页的步骤及代码
  10. MES管理系统这5个模块,可保障板式定制家具的生产需求
  11. python绘制世界人口地图
  12. ChucK初步(4)
  13. AI产品经理-人工智能的发展
  14. Css+Jquery实现点击图片放大缩小预览 图片预览 查看大图
  15. Java基础--继承案例(二)
  16. Excel 保存文件出现 您试图打开的文件类型(Excel 2007和更高版本的启用宏的工作簿和模板)被信任中心的文件阻止设置阻止
  17. 温莎大师财富对接热线:tcdney温莎大师引领区块链时代方向标
  18. 网站SEO站外建设速成手册,快速上排名、权重
  19. Windows 安装与配置IIS
  20. HBuilder开发词典app(一)--基本页面布局

热门文章

  1. gantt project 使用
  2. django rest framework------得心应手
  3. selenium自动化测试浏览器驱动安装(属于转载文章)
  4. ubuntu中minicom安装和使用
  5. js 根据所输内容生成助记码
  6. java面向对象第六章
  7. 7、Java并发性和多线程-如何创建并运行线程
  8. C#开发微信门户及应用(25)-微信企业号的客户端管理功能
  9. C#_List转换成DataTable
  10. 解決BufferedReader读取UTF-8文件中文乱码(转)