zoukankan      html  css  js  c++  java
  • oracle 常用表操作

     创建表

      create table 表名(字段 类型,字段 类型)
      create table employee(id number,
          name varchar2(20),
          pass varchar2(20)

      );

      通过查询创建一张新表
      create table emp1 as select empno,ename,job from employee;
    删除表
      drop table 表名
      drop table emp1
    添加字段
      alter table 表名 add 字段;
      alter table employee add (dept varchar2(50));
    修改字段的类型
      alter table employee modify (dept char(2));
    删除一个字段
      alter table employee drop column dept;

    五个约束
      primary key
      foreign key
      not null
      unique
      check

    实例:

      部门
      create table dept(did number primary key,
          name varchar2(100) unique

      );
      经理,外键为列级
      create table manager(mid number primary key,
          dept number references dept(did),
          name varchar2(20) not null,
          sex char(2) check(sex in('男','女')),
          email varchar2(40) unique

      );
      经理,外键为表级
      create table manager(mid number,
          dept number,
          name varchar2(20) not null,
          sex char(2) check(sex in('男','女')),
          email varchar2(40) unique,
          constraint pk_g primary key(mid),
          constraint fk_g foreign key(dept) references dept(did)
      );
      使用alter添加主外键
        alter table manager add constraint pk_g primary key (mid)
        alter table manager add constraint fk_g foreign key(dept) references dept(did)
      删除约束
        alter table manager drop constraint fk_g;

    清空表 ,不能回滚
      truncate table manager;
    修改表名称
      rename dept to newdept;

    根据条件删除

      delete from manager where mid=1;

    删除所有的记录
      delete from manager;
      commit;

    回滚
      rollback;
    设置一个保存点
      savepoint aa;
      rollback to aa; 回滚

    外键的级联
      on update 和 on delete 后面可以跟的词语有四个:
        no action 表示不做任何操作,
        set null 表示在外键表中将相应字段设置为null
        set default 表示设置为默认值
        cascade 表示级联操作,就是说,如果主键表中被参考字段更新,外键表中也更新,主键表中的记录被删除,外键表中改行也相应删除

        create table people(id number( primary key,
            name varchar2(40),
            mid number references manager(mid) on delete set null

        )

    添加注释,也可以在创建表是加在字段后
      comment on table table_name is '表注释';
      comment on column table_name.columns is '列注释';

    当前用户的表 ,all_tables为所有用户的,dba_tables包括系统表在内的
      select table_name from user_tables;
    获取当前用户表字段,all_tab_columns,dba_tab_columns
      select * from user_tab_columns where table_name='用户表';
    获取表注释
      select * from user_tab_comments
    获取字段注释
      select * from user_col_comments

  • 相关阅读:
    NC portal怎么重新开始入门,整个配置过程包括配置一个节点
    NChome如何创建单据跟主子表还有扩展开发要怎么弄?
    还是有必要确定一下自己到底在做是什么
    os.path模块
    re模块
    Django settings配置文件
    自定义分页器
    AJAX
    AJAX 一些常用方法
    AJAX 简单上手
  • 原文地址:https://www.cnblogs.com/gxl00/p/5054547.html
Copyright © 2011-2022 走看看