Oracle基础-建表语句(DDL)

1.创建表


语法:


CREATE TABLE TABLE_NAME(
FILED_NAME DATATYPE NOT NULL,
FILED_NAME DATATYPE NOT NULL,
FILED_NAME DATATYPE,
FILED_NAME DATATYPE NOT NULL,
CONSTRAINT PK_NAME PRIMARY KEY (FILED_NAME)
using index tablespace TABLESPACE_NAME1
)
tablespace TABLESPACE_NAME2;
comment on table TABLE_NAME is 'COMMENT';
comment on COLUMN TABLE_NAME.FILED_NAME is 'COMMENT';
comment on column TABLE_NAME.FILED_NAME is 'COMMENT';
comment on column TABLE_NAME.FILED_NAME is 'COMMENT';
comment on column TABLE_NAME.FILED_NAME is 'COMMENT';




示例:


--1.建表
--学生表
CREATE TABLE STUDENT(
STUDENT_ID NUMBER(12) NOT NULL,
STU_NAME VARCHAR2(255) NOT NULL,
AGE NUMBER(6),
SEX CHAR(1) NOT NULL,
CONSTRAINT PK_STUDENT PRIMARY KEY (STUDENT_ID)
using index tablespace IDX_CC
)
tablespace TAB_CC;
comment on table student is '学生表';
comment on COLUMN student.student_id is '学生标识';
comment on column student.stu_name is '学生姓名';
comment on column student.age is '学生年龄';
comment on column student.sex is '学生性别';
commit;
--课程表
CREATE TABLE course(
course_id NUMBER(12) NOT NULL,
course_name varchar2(255) NOT NULL,
CONSTRAINT pk_course PRIMARY KEY (course_id)
USING INDEX TABLESPACE idx_cc
)
TABLESPACE tab_cc;
COMMENT ON TABLE course IS '课程';
COMMENT ON COLUMN course.course_id IS '课程标识';
COMMENT ON COLUMN course.course_name IS '课程名称';
COMMIT;
--学生课程表
CREATE TABLE stu_course(
student_id NUMBER(12) NOT NULL,
course_id NUMBER(12) NOT NULL,
CONSTRAINT pk_stu_course PRIMARY KEY (student_id,course_id)
USING INDEX TABLESPACE idx_cc
)
TABLESPACE tab_cc;
COMMENT ON TABLE stu_course IS '学生课程表';
COMMENT ON COLUMN stu_course.student_id IS '学生标识';
COMMENT ON COLUMN stu_course.course_id IS '课程标识';
COMMIT;
ALTER TABLE stu_course ADD
CONSTRAINT fk_stu_course_student FOREIGN KEY (student_id)
REFERENCES student(student_id);
ALTER TABLE stu_course ADD
CONSTRAINT fk_stu_course_course FOREIGN KEY(course_id)
REFERENCES course(course_id);

COMMIT;


2.删除表

语法:
DROP TABLE TABLE_NAME;


示例:
DROP TABLE STUDENT;

Oracle 9i之前,获得建表语句是一件比较麻烦的事情。可以使用export命令来导出建表语句,但是由于输出格式的问题,这些语句并不能直接使用。另一种方法是编写复杂的脚本来查询数据字典,但这对于一些用户来说可能是困难的。 对于Oracle 8.1.6.0版本,可以使用以下方法来查询建表语句。首先,需要连接到Oracle数据库。然后,可以使用以下命令查询建表语句: ``` SELECT DBMS_METADATA.GET_DDL('TABLE', '表名', '用户名') FROM DUAL; ``` 其中,'表名'是要查询建表语句的表名,'用户名'是该表所属的用户名。 此外,您还可以使用一些第三方工具来获取建表语句,例如使用TOAD或SQL Developer等。这些工具提供了更方便的界面和功能,可以轻松地导出建表语句。 请注意,上述方法适用于Oracle 8.1.6.0版本,对于其他版本可能会有所不同。建议根据您的具体版本和需求,在Oracle官方文档或相关资料中查找更详细的信息和方法来查询建表语句。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Oracle轻松取得建表和索引的DDL语句](https://download.csdn.net/download/weixin_38666232/13701754)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [如何查看Oracle数据表的建表语句?](https://blog.csdn.net/weixin_42347346/article/details/116416079)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [1.4 批量生成Oracle建表语句](https://blog.csdn.net/weixin_40649680/article/details/124198799)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值