Oracle 操作表結構基本語法及示例

延陵縹緲發表於2018-07-12

1.操作表

1.1建立不帶主鍵的表

    create table student (

    studentid int,

    studentname varchar(8),

    age int);

1.2 建立表的同時建立主鍵約束

(1)無命名

    create table student (

    studentid int primary key not null,

    studentname varchar(8),

    age int);

(2)有命名

    create table students (

    studentid int ,

    studentname varchar(8),

    age int,

    constraint yy primary key(studentid));

1.3 刪除表中已有的主鍵約束

(1)無命名

    可用 SELECT * from user_cons_columns;

    查詢表中主鍵名稱得student表中的主鍵名為SYS_C002715

    alter table student drop constraint SYS_C002715;

(2)有命名

    alter table students drop constraint yy;

1.4 向表中新增主鍵約束

    alter table student add constraint pk_student primary key(studentid);

1.5 重新命名錶

    alter table table_name rename to new_table_name;

2.操作欄位

建立一個test1表:

    create table test1

    (id varchar2(20) not null);

2.1 新增欄位

    語法:alter table tablename add (column datatype [default value][null/not null],….);

    示例:

        增加單個欄位:

            alter table test1 add (name varchar2(30) default ‘無名氏’ not null);

        新增多個欄位:

            alter table test1

            add (name varchar2(30) default ‘無名氏’ not null,

            age integer default 22 not null,

            has_money number(9,2)

            );

2.2 修改欄位

    語法:alter table tablename modify (column datatype [default value][null/not null],….);

    示例:

        修改欄位型別或長度:

            Alter Table 表名  modify (欄位名稱  (新的)欄位型別);

            alter table test1 modify (name varchar2(16));

            注意:當此列有資料時,不能修改型別,不能將欄位的長度減小,只能增加長度。

        修改欄位名稱:

            Alter Table 表名 rename  column (舊的)欄位名稱  to (新的)欄位名稱;        

            alter table test1 rename column  name to  new_name;

2.3 刪除欄位

    語法:alter table tablename drop (column);

    示例:
        刪除欄位:
        alter table test1 drop column name;

相關文章