Les09_chinese

上传人:xx****x 文档编号:242869124 上传时间:2024-09-10 格式:PPT 页数:32 大小:224.50KB
返回 下载 相关 举报
Les09_chinese_第1页
第1页 / 共32页
Les09_chinese_第2页
第2页 / 共32页
Les09_chinese_第3页
第3页 / 共32页
点击查看更多>>
资源描述
Click to edit Master title style,First Level,Second Level,Third Level,Fourth Level,Fifth Level,9-,32,Copyright Oracle Corporation, 2001. All rights reserved.,创建和管理表,目标,通过本章学习,您将可以:,描述主要的数据库对象。,创建表。,描述各种数据类型。,修改表的定义。,删除,重命名和清空表。,常见的数据库对象,对象描述,表 基本的数据存储集合,由行和列组成。,视图从表中抽出的逻辑上相关的数据集合。,序列 提供有规律的数值。,索引提高查询的效率,同义词 给对象起别名,命名规则,表名和列名,:,必须以字母开头,必须在,130,个字符之间,必须只能包含,AZ, az, 09, _, $,和,#,必须不能和用户定义的其他对象重名,必须 不能是,Oracle,的保留字,CREATE TABLE,语句,必须具备,:,CREATE TABLE,权限,存储空间,必须指定,:,表名,列名,数据类型,尺寸,CREATE TABLE ,schema,.,table,(,column,datatype,DEFAULT,expr, .);,引用其他用户的表,其他用户定义的表不在当前用户的方案中,应该使用用户名座位前缀,引用其他用户定义的对象,DEFAULT,选项,插入时为一个列指定默认值,字符串,表达式,或,SQL,函数都是合法的,其它列的列名和伪列是非法的,默认值必须满足列的数据类型定义,. hire_date DATE DEFAULT SYSDATE, .,语法,确认,创建表,CREATE TABLE dept(deptno NUMBER(2),dname VARCHAR2(14),loc VARCHAR2(13);,Table created.,DESCRIBE dept,Oracle,数据库中的表,用户定义的表,:,用户自己创建并维护的一组表,包含了用户所需的信息,数据字典,:,由,Oracle Server,自动创建的一组表,包含数据库信息,SELECT table_name,FROM user_tables ;,SELECT*,FROM user_catalog ;,查询数据字典,查看用户定义的各种数据库对象,查看用户定义的表,视图,同义词和序列,SELECT DISTINCT object_type,FROM user_objects ;,查看用户定义的表,.,数据类型,数据类型描述,VARCHAR2(,size,),可变长字符数据,CHAR(,size,),定长字符数据,NUMBER(,p,s),可变长数值数据,DATE,日期型数据,LONG,可变长字符数据,最大可达到,2G,CLOB,字符数据,最大可达到,4G,RAW and LONG RAW,裸二进制数据,BLOB,二进制数据,最大可达到,4G,BFILE,存储外部文件的,二进制数据,最大可达到,4G,ROWID,行地址,日期数据类型,数据类型 描述,TIMESTAMP,时间撮,INTERVAL YEAR TO MONTH,若干年月,INTERVAL DAY TO SECOND,若干天到秒,Oracle9,i,对日期的改进,:,加入了新的日期型数据类型,.,有效的存储新数据类型,.,提高对时区和本地时区的支持,.,日期数据类型,TIMESTAMP,数据类型是对,DATE,数据类型的扩展,按,DATE,数据类型存放 年,月,日,小时,分钟,秒 以及微秒甚至纳秒,TIMESTAMP,数据类型的一般形式,:,TIMESTAMP(fractional_seconds_precision),TIMESTAMP,WITH,TIME,ZONE,TIMESTAMP WITH TIME ZONE,是一个带有时区的,TIMESTAMP,时区部分按照小时和分钟显示本地时区与,UTC,的时差,TIMESTAMP(fractional_seconds_precision),WITH TIME ZONE,TIMESTAMP,WITH,LOCAL,TIME,TIMESTAMP,WITH,LOCAL,TIME ZONE,是一种带有本地时区的,TIMESTAMP,数据库按照数据库的本地时区存放数据,时区不显示在数据后面,,Oracle,自动将数据转换为用户所在的时区,TIMESTAMP WITH LOCAL TIME ZONE,的一般形式,TIMESTAMP(fractional_seconds_precision),WITH LOCAL TIME ZONE,INTERVAL,YEAR,TO,MONTH,数据,INTERVAL,YEAR,TO,MONTH,存放若干年和若干月的一个时间段。,INTERVAL YEAR (year_precision) TO MONTH,INTERVAL 123-2 YEAR(3) TO MONTH,Indicates an interval of 123 years, 2 months.,INTERVAL 123 YEAR(3),Indicates an interval of 123 years 0 months.,INTERVAL 300 MONTH(3),Indicates an interval of 300 months.,INTERVAL 123 YEAR,Returns an error, because the default precision is 2,and 123 has 3 digits.,INTERVAL,DAY,TO,SECOND,数据,INTERVAL DAY TO SECOND,存放若干天到若干秒的一个时间段,INTERVAL DAY (day_precision),TO SECOND (fractional_seconds_precision),INTERVAL 4 5:12:10.222 DAY TO SECOND(3),Indicates 4 days, 5 hours, 12 minutes, 10 seconds,and 222 thousandths of a second.INTERVAL 123 YEAR(3).,INTERVAL 7 DAY,Indicates 7 days.,INTERVAL 180 DAY(3),Indicates 180 days.,INTERVAL,DAY,TO,SECOND,数据,INTERVAL DAY TO SECOND,存放若干天到若干秒的一个时间段,INTERVAL 4 5:12:10.222 DAY TO SECOND(3),Indicates 4 days, 5 hours, 12 minutes, 10 seconds,and 222 thousandths of a second.,INTERVAL 4 5:12 DAY TO MINUTE,Indicates 4 days, 5 hours and 12 minutes.,INTERVAL 400 5 DAY(3) TO HOUR,Indicates 400 days 5 hours.,INTERVAL 11:12:10.2222222 HOUR TO SECOND(7),indicates 11 hours, 12 minutes, and 10.2222222 seconds.,使用子查询创建表,时候用,AS,subquery,选项,将创建表和插入数据结合起来,指定的列和子查询中的列要一一对应,通过列名和默认值定义列,CREATE TABLE,table,(,column,column,.),AS,subquery;,使用子查询创建表举例,DESCRIBE dept80,CREATE TABLE dept80,AS SELECT employee_id, last_name,salary*12 ANNSAL,hire_date FROM employees WHERE department_id = 80;,Table created.,ALTER,TABLE,语句,使用,ALTER,TABLE,语句可以,:,追加新的列,修改现有的列,为新追加的列定义默认值,删除一个列,ALTER,TABLE,语句,使用,ALTER TABLE,语句追加,修改,或,删除列的语法,.,ALTER TABLE,table,ADD (,column datatype,DEFAULT,expr,column datatype,.);,ALTER TABLE,table,MODIFY (,column datatype,DEFAULT,expr,column datatype,.);,ALTER TABLE,table,DROP (,column,);,追加一个新列,DEPT80,追加一个新列,DEPT80,新列,追加一个新列,使用,ADD,子句追加一个新列,新列是表中的最后一列,ALTER TABLE dept80,ADD (job_id VARCHAR2(9);,Table altered.,修改一个列,可以修改列的数据类型,尺寸,和默认值,对默认值的修改只影响今后对表的修改,ALTER TABLEdept80,MODIFY(last_name VARCHAR2(30);,Table altered.,删除一个列,使用,DROP COLUMN,子句删除不再需要的列,.,ALTER TABLE dept80,DROP COLUMN job_id;,Table altered.,ALTER TABLE,table,SET UNUSED(,column,);,ALTER TABLE table,SET UNUSED COLUMN,column;,SET,UNUSED,选项,使用,SET UNUSED,使一个或多个列被标记为不可用,使用,DROP UNUSED COLUMNS,选项删除不可用的列,OR,ALTER TABLE,table,DROP UNUSED COLUMNS;,删除表,数据和结构都被删除,所有正在运行的相关事物被提交,所有相关索引被删除,DROP TABLE,语句不能回滚,DROP TABLE dept80;,Table dropped.,改变对象的名称,执行,RENAME,语句,改变表,视图,序列,或同义词的名称,必须是对象的拥有者,RENAME dept TO detail_dept;,Table renamed.,清空表,TRUNCATE TABLE,语句,:,删除表中所有的数据,释放表的存储空间,TRUNCATE,语句不能回滚,可以使用,DELETE,语句删除数据,TRUNCATE TABLE detail_dept;,Table truncated.,表的注释,使用,COMMENT,语句给表或列添加注释,可以通过下列数据字典视图查看所添加的注释,:,ALL_COL_COMMENTS,USER_COL_COMMENTS,ALL_TAB_COMMENTS,USER_TAB_COMMENTS,COMMENT ON TABLE employees,IS Employee Information;,Comment created.,总结,语句描述,CREATE TABLE,创建表,ALTER TABLE,修改表结构,DROP TABLE,删除表,RENAME,重命名表,TRUNCATE,删除表中的所有数据,并释放存储空间,COMMENT,给对象加注释,通过本章学习,您已经学会如何使用,DDL,语句创建,修改,删除,和重命名表,.,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!