第四章-表的设计、创建及维护.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《第四章-表的设计、创建及维护.ppt》由会员分享,可在线阅读,更多相关《第四章-表的设计、创建及维护.ppt(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Inspur Education Inspur Group第第4 4章章 表的设计、创建及维护表的设计、创建及维护Inspur Education 知识点知识点回顾回顾lOracleOracle服务器服务器包括:包括:oracleoracle数据库和数据库和oracleoracle实例实例lOracleOracle实例结构实例结构lOracleOracle数据库的物理组件和逻辑组件数据库的物理组件和逻辑组件l结构化查询语言结构化查询语言(sqlsql)及分类及分类l创建新用户,并授予权限和角色创建新用户,并授予权限和角色2Inspur Education 本讲目标本讲目标了解了解 Oracle
2、 Oracle 数据类型数据类型 掌握表的设计及创建掌握表的设计及创建掌握数据定义语言的使用掌握数据定义语言的使用3Inspur Education SQL SQL 简介简介 2-12-1lSQL 是 Structured Query Language(结构化查询语言)的首字母缩写词lSQL 是数据库语言,Oracle 使用该语言存储和检索信息l表是主要的数据库对象,用于存储数据l通过 SQL可以实现与 Oracle 服务器的通信SELECT ename FROM Emp;发送 SQL 查询Oracle 服务器enameBLAKESMITH ALLEN DAVID MARTIN发送命令输出到用
3、户端用户4Inspur Education SQL SQL 简介简介 2-22-2lSQL 支持下列类别的命令:数据定义语言(DDL Data Definition Language)数据操纵语言(DML Data Manipulation Language)事务控制语言(TCL Transaction Control Language)数据控制语言(DCL Data Control Language)数据定义语言数据定义语言 CREATEALTERDROP数据操纵语言数据操纵语言 INSERTSELECTDELETEUPDATE事务控制语言事务控制语言COMMITSAVEPOINTROLLB
4、ACK数据控制语言数据控制语言 GRANTREVOKE5Inspur Education Oracle Oracle 数据类型数据类型 5-15-1l创建表时,必须为各个列指定数据类型l以下是 Oracle 数据类型的类别:数据类型数据类型字符数值日期时间RAW/LONG RAWLOB6Inspur Education Oracle Oracle 数据类型数据类型5-25-2字符数据类型字符数据类型CHARVARCHAR2LONGl当需要固定长度的字符串时,使用 CHAR 数据类型。lCHAR 数据类型存储字母数字值。lCHAR 数据类型的列长度可以是 1 到 2000 个字节。lVARCHA
5、R2数据类型支持可变长度字符串lVARCHAR2数据类型存储字母数字值lVARCHAR2数据类型的大小在1至4000个字节范围内lLONG 数据类型存储可变长度字符数据lLONG 数据类型最多能存储 2GB7Inspur Education Oracle Oracle 数据类型数据类型 5-35-3l数值数据类型可以存储整数、浮点数和实数最高精度为 38 位l数值数据类型的声明语法:NUMBER(p,s)P表示精度,S表示小数点的位数l日期时间数据类型存储日期和时间值,包括年、月、日,小时、分钟、秒l主要的日期时间类型有:DATE-存储日期和时间部分,精确到整个的秒TIMESTAMP-存储日期
6、、时间和时区信息,秒值精确到小数点后6位8Inspur Education Oracle Oracle 数据类型数据类型 5-45-4lRAW 数据类型用于存储二进制数据lRAW 数据类型最多能存储 2000 字节lLONG RAW 数据类型用于存储可变长度的二进制数据lLONG RAW 数据类型最多能存储 2 GBLOBlLOB 称为“大对象”数据类型,可以存储多达 4GB 的非结构化信息,例如声音剪辑和视频文件等lLOB 数据类型允许对数据进行高效、随机、分段的访问BLOBCLOBBFILECLOB 即 Character LOB(字符 LOB),它能够存储大量字符数据BLOB 即 Bin
7、ary LOB(二进制 LOB),可以存储较大的二进制对象,如图形、视频剪辑和声音文件 BFILE 即 Binary File(二进制文件),它用于将二进制数据存储在数据库外部的操作系统文件中9Inspur Education Oracle Oracle 数据类型数据类型 5-5 5-5 qOracle 中伪列就像一个表列,但是它并没有存储在表中q伪列可以从表中查询,但不能插入、更新和删除它们的值q常用的伪列有ROWID和ROWNUMROWID 是表中行的存储地址,该地址可以唯一地标识数据表中的一行,可以使用 ROWID 伪列快速地定位表中的一行ROWNUM 是查询返回的结果集中行的序号,可以
8、使用它来限制查询返回的行数10Inspur Education 数据定义语言数据定义语言数据定义语言用于改变数据库结构,包括创建、更改和删除数据库对象数据定义语言用于改变数据库结构,包括创建、更改和删除数据库对象用于操纵表结构的数据定义语言命令有:用于操纵表结构的数据定义语言命令有:CREATE TABLEALTER TABLETRUNCATE TABLEDROP TABLE11Inspur Education 表的创建和维护表的创建和维护用来创建和修改数据库表的命令被称为用来创建和修改数据库表的命令被称为“数据定义语言数据定义语言”(Data Data Definition Language
9、Definition Language,DDLDDL)命令。这些命令实际上是专门用来创建或修)命令。这些命令实际上是专门用来创建或修改数据库对象的改数据库对象的SQLSQL命令。命令。12Inspur Education 表设计表设计 3-13-1首先表的名称并确定结构;确定哪些列将包含在这个表中,确定任何字符首先表的名称并确定结构;确定哪些列将包含在这个表中,确定任何字符或数字列所需要的宽度或数字列所需要的宽度在在OracleOracle中命名表和列时的规则:中命名表和列时的规则:表和列的名称最多可以达到30个字符长,而且必须以一个字母开始,这个限制只适合于表或列的名称,而不适合用于一列中的
10、数据量。表和列名称中允许数字,下划线(_)和数字符号(#),但是不能在表和列名称中包含任何空格。用户拥有的每一个表应该具有一个唯一的表名称,而且每一个表中的列名称也应该是唯一的不能使用Oracle“保留字”,例如:SELECT,DISTINCT,CHAR和NUMBER等。13Inspur Education 表设计表设计 3-23-2u确定了表的内容,可以创建列了,必须完成确定了表的内容,可以创建列了,必须完成1.1.为每一列选择一个名称为每一列选择一个名称2.2.确定每一列将存储的类型。确定每一列将存储的类型。3.3.确定(在某些情况下)列的最大宽度确定(在某些情况下)列的最大宽度14Ins
11、pur Education 表设计表设计 3-33-3在选择列名称之前,先看一下数据类型以及他们的默认值在选择列名称之前,先看一下数据类型以及他们的默认值OracleOracle数据类型数据类型数据类型数据类型说明说明VARCHAR2(n)长度可变的字符数据,其中n表示这个列的最大长度,最大大小是4000个字符。这种数据类型没有默认大小,必须指定一个最小值。例子:VARCHAR2(9),最多可以包含9个字母、数字或符号CHAR(n)长度固定的字符,其中n表示列的长度,默认大小是1,最大大小是2000个字符。例子:CHAR(9)可以包含9个字母,数字或符号,但是输入的字符少于9个,则会向右边添加
12、空格,使数据达到9个字符的长度。NUMBER(p,s)数字列,其中p表示精度(或小数右边和左边的总位数),最大值是38位NUMBER(7,2)DATE日期类型,默认的格式“DD-MM-YY”,可以使用TO_CHAR格式显示日期其他元素LONG最多存储2G的长度可变的字符数据CLOB用于最多4GB的单字节字符数据RAW(n)最多存储2000字节的原始二进制数据。LONG RAW最多2GB的未结构化数据BLOB最多可存储4GB的未结构化数据BFILE存储了操作系统存储的一个二进制文件的文件定位器TIMESTAMPDATE的数据扩展,不需要TO_CHAR函数就可引用时,分,秒INTERVAL用来确定
13、特定的时间间隔或时间量15Inspur Education 创建表创建表u关键字“CREATE TABLE”指示Oralce创建一个表。可以包括可选的schema(架构),表示谁将“拥有”要创建的这个表,例如:如果创建这个表的用户也就是这个将要拥有这个表的人,那么可以忽略架构,将默认采用当前的用户名。另一方面,如果使用用户名为DRAKE为某个人创建了ACCTMANAGER表,那么架构和表名称将属于DRAKE的架构,而不是属于你的架构。数据库对象的所有者有权在对象上执行这些操作。要想为其他人的架构创建一个表(也就是其他人拥有的表),你必须具有对那个用户的架构使用CREATE TABLE命令的权限
14、。CREATE TABLEschema tablename(columnname datatypeDEFAULT value,columnname datatypeDEFAULT value,);16Inspur Education 定义列定义列一个表最多可以包含一个表最多可以包含10001000列。列。CREATE TABLE acctmanager(amid VARCHAR2(4),amname VARCHAR2(20),amedate DATE DEFAULT SYSDATE,region CHAR(2);u创建表的时候允许向列分配一个默认值。默认值是用户没有在列中输入内容情况,Orac
15、le自动存储的值。u表名虽然是以小写字母输入,但ORACLE会在处理命令时自动转为大写。将表名与列名取小写字母为了与Oracle关键字区别。u由于创建表的用户就是这个表的拥有者,所以省略架构名。uamedate分配了一个默认值SYSDATE,表明如果用户输入新的销售经理信息,而没有包括这个人的聘用时间时,则oracle服务器会插入当前日期。注意:如果定义amedate为空,则会生成一个错误。u执行了命令之后,只是创建了表结构,并没有数据。u能够执行CREATE TABLE命令必须有这个权限,如果没有要求管理员授予。17Inspur Education 查看表结构:查看表结构:DESCRIBED
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 设计 创建 维护
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内