《数据库入门课件-第3章DDL.pptx》由会员分享,可在线阅读,更多相关《数据库入门课件-第3章DDL.pptx(15页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、数据库入门数据库入门地纬新员工入门课程系列地纬软件理解简单关系模式,会画关系模式图了解Oracle的基础知识熟练使用SQL语句会使用SQL Plus 和PL/SQL developer工具会导入导出dmp课程目标课程目标地纬软件本章目标了解SQL简介掌握ORACLE数据类型熟练掌握DDL语句第三章第三章 DDLDDL 地纬软件SQL 支持下列类别的命令:数据定义语言(DDL Data Definition Language)Create Alter Drop 数据操纵语言(DML Data Manipulation Language)Insert delete update select 事务
2、控制语言(TCL Transaction Control Language)Commit Rollback 数据控制语言(DCL Data Control Language)Grant RevokeSQL 简简介介地纬软件Oracle Oracle 数据类型数据类型字符数值DateRAW/LONG RAWLOBOracle数据类型CHARVARCHAR2LONGBLOBCLOBBFILE地纬软件Char(n):固定长度的字符串,用户指定长度n;Varchar2(n):可变长度的字符串,用户指定最大长度n;number(p,d):定点数,精度由用户指定date:日期类型,Oracle的date类
3、型保存 格式是YYYY-MM-DD hh:mm:ss;clob:字符数据的大对象数据类型;blob:二进制数据的大对象数据类型。Oracle Oracle 数据类型数据类型varchar2把空字符串等同于null处理;在新的Oracle版本中,varchar是varchar2的同义词,建议使用varchar2。地纬软件数据定义语言用于改变数据库结构,包括创建、更改和删除数据库对象用于操纵表结构的数据定义语言命令有:CREATE TABLEALTER TABLETRUNCATE TABLEDROP TABLE数据定义语言数据定义语言DDLDDL地纬软件创建表创建表CREATE TABLE (,)
4、;其中:所要定义的基本表的名字:组成该表的各个属性(列):涉及相应属性列的完整性约束条件:涉及一个或多个属性列的完整性约束条件create table dw.doctor(ysbm varchar2(10),xm varchar2(50)not null,xb char(1),ksbm varchar2(10),constraint pk_dw_doctor primary key(ysbm),constraint fk_dw_doctor_ksbm foreign key(ksbm)references dw.dept(ksbm),check(xb=1 or xb=2)tablespace
5、TS_DBTRAINING;create table dw.patient_script_genl(fyid varchar2(20),fyfsrq date,ysbm varchar2(10),ksbm varchar2(10),grbm varchar2(18),jshid varchar2(20),zje number(15,2),bxje number(8,2),zfje number(8,2),constraint pk_patient_script_genl primary key(fyid),constraint fk_patient_script_genl_ksbm forei
6、gn key(ksbm)references dw.dept(ksbm),constraint fk_patient_script_genl_ysbm foreign key(ysbm)references dw.doctor(ysbm),constraint fk_patient_script_genl_grbm foreign key(grbm)references dw.per_natl(grbm),constraint fk_patient_script_genl_jshid foreign key(jshid)references dw.patient_settle(jshid)ta
7、blespace TS_DBTRAINING;地纬软件通过子查询创建表通过子查询创建表2012 Inspur Group创建一个包含现有表的数据的表,可以使用CREATETABLE命令并包括一个包含子查询的AS子句。CREATE TABLE tablename(columnname,)AS(subquery);CREATE TABLE si0001.emp_natlAS(SELECT grbh,xm,xb,sfzhmFROM si3.per_regWHERE xb=1 );地纬软件修改修改现现有表有表对表结构进行更改:添加一列,删除一列,更改列的大小通过ALTER TABLE命令来来实现ORA
8、CLE的特性:可以修改表而不必关闭数据库,即使用户正在访问这个表,仍然可以修改这个表而不必中断服务。ALTER TABLE tablenameADD|MODIFY|DROPCOLUMN|coloumnnamedefinition;地纬软件修改修改现现有表有表alter table dw.doctor add ksfzr varchar2(10);alter table dw.patient_script_genl drop constraint fk_patient_script_genl_ysbm;alter table dw.patient_script_genl drop column
9、fyfsrq;alter table dw.per_natl modify jtzz varchar2(100);(只能改大,不能改小)地纬软件重命名表重命名表RENAME oldtablename TO newtablename;2012 Inspur Group RENAME dw.per_natl TO dw.emp_natl;地纬软件删除表删除表注意:因为该子句将删除列及其内容,所以使用要格外小心DROP TABLE tablename;2012 Inspur Group drop table dw.per_natl;地纬软件截断表截断表TRUNCATE TABLE tablename;在截断一个表时,表中包含的所有行都将被删除,但表本身将会保留,换句话说,列依然存在,只是其中没有存储值。Truncate能达到删除数据的目的,速度比delete快,但无法rollback TRUNCATE TABLE dw.per_natl;地纬软件1、按照第一章规定的关系模式图完成7张表的创建要求:1、写出建表语句 2、用pl/sql developer工具重新创建这7张表2、将dw.per_natl中xm字段长度改成varchar2(300)3、制作一个excel,并将数据导入dw.per_natl中练习练习