Oacle 데이터베이스 시트 필드 추가, 수정, 삭제 등 DDL 작업

7783 단어 Oacle
Oacle 데이터베이스 시트 필드 추가, 수정, 삭제 등 작업
1. 테이블 생 성
-- Create table
create table TB_PERMISSION_ORGANIZATION
(
  id           VARCHAR2(150) not null,
  parent_id    VARCHAR2(150),
  name         VARCHAR2(200) not null,
  org_code     VARCHAR2(200) not null,
    org_type     NUMBER(2) default 0,
  create_date  date  not null,
  update_date  date  NOT null,
  is_delete    NUMBER default 0 not NULL
);
alter table TB_PERMISSION_ORGANIZATION add constraint PK_TB_PERMISSION_ORGANIZATION primary key (ID);
  alter table TB_PERMISSION_ORGANIZATION  add constraint UNIQUE_ORG_CODE unique (ORG_CODE);
COMMIT;

-- Create table
create table TB_PERMISSION_USER
(
   id             NUMBER(10) not null,
  login_name      VARCHAR2(200) not null,
  password        VARCHAR2(200) not null,
  name            VARCHAR2(50),
  phone           VARCHAR2(20),
  email           VARCHAR2(100),
  address         VARCHAR2(500),
  describe        VARCHAR2(1000), 
  organization_id VARCHAR2(150),
  create_date     date not null,
  update_date     date NOT NULL,
  is_delete       NUMBER default 0 not NULL
);
-- Add comments to the columns 
comment on column TB_PERMISSION_USER.login_name is '    ';
comment on column TB_PERMISSION_USER.is_delete is '    0:     1    ';
  -- Create/Recreate primary, unique and foreign key constraints 
  alter table TB_PERMISSION_USER add constraint PK_TB_PERMISSION_USER primary key (ID);
  alter table TB_PERMISSION_USER  add constraint UNIQUE_TB_PERMISSION_USER unique (login_NAME);
  alter table TB_PERMISSION_USER add constraint FK_TB_PERMISSION_USER_ORG foreign key (ORGANIZATION_ID)  references TB_PERMISSION_ORGANIZATION (ID) on delete cascade;
  COMMIT;

tb 로permission_user 는 예 를 표시 하고 표 에 데이터 가 존재 합 니 다.
2. 필드 추가
   :alter table tablename add (column datatype [default value][null/not null],….);
   :alter table    add (                 );
   :ALTER TABLE tb_permission_user ADD(english_name Varchar2(100) DEFAULT 'admin' NOT NULL);

3. 필드 삭제
   :alter table tablename drop (column);
   :alter table    drop column    ;
   :ALTER TABLE tb_permission_user DROP COLUMN english_name;

4. 필드 수정
1. 필드 이름 변경
* * 문법: 테이블 테이블 이름 을 변경 하여 열 이름 을 이름 1 로 변경 합 니 다.설명: alter table 표 이름 rename column 원 필드 이름 을 변경 한 필드 이름 으로 변경 합 니 다.예: ALTER TABLE tbpermission_user RENAME COLUMN NAME TO ch_name;
2. 필드 형식 / 길이 문법 수정: alter table name modify (column datatype [default value] [null / not null],...);설명: alter table 표 이름 modify (필드 이름 필드 형식 기본 값 이 비어 있 는 지 여부);
  • 표 에 데이터 가 없 으 면 왜 필드 형식 을 바 꾸 든 직접 실행 할 수 있 습 니 다. 예 를 들 어 ALTER TABLE tbpermission_user MODIFY (address VARCHAR2(1000));
  • 표 에 존재 하 는 데이터 예: tbpermission_user 표 의 메 인 키 id (number (10) – > id (varchar 2 (100)))
  • --       id_temp
    ALTER TABLE tb_permission_user ADD(id_temp VARCHAR2(100));
    --  id     id_temp
    UPDATE tb_permission_user SET id_temp = ID;
    --     id 
    ALTER TABLE tb_permission_user DROP COLUMN ID;
    --   id_temp   id 
    ALTER TABLE tb_permission_user RENAME COLUMN id_temp TO ID;
    --  id       
    ALTER TABLE tb_permission_user ADD CONSTRAINT PK_TB_PERMISSION_USER PRIMARY KEY (ID);

    좋은 웹페이지 즐겨찾기