第3章 数据库的创建和操作
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3. 1 以界面方式创建数据库(采用DBCA)
(6)在“数据库身份证明”窗口中,将所有账户设置为同一管理口令 (Mm123456),如图3.6所示,单击“下一步”按钮。
3. 1 以界面方式创建数据库(采用DBCA)
(7)在“数据库文件所在位置”窗口中,选择“所有数据库文件使用公共位 置”,单击“浏览”按钮选择数据库文件的存放路径,如图3.7所示,单击“下一 步”按钮。 (8)在“恢复配置”窗口中采取默认的配置,单击“下一步”按钮继续。
3.2.1 表操作
2.数据类型 在设计表的列时,必须为其指定数据类型,它决定了该列数据的取值、范围和 存储格式。列的数据类型可以是Oracle提供的系统数据类型,其中主要的类型列于 表3.2中。
3.2.1 表操作
3.表结构设计 创建表的实质就是定义表结构以及设置表和列的属性。创建表之前,先要确定 表的名字、表的属性,同时确定表所包含的列名、列的数据类型、长度、是否可为 空值、约束条件、默认值设置、规则以及所需索引、哪些列是主键、哪些列是外键 等属性,这些属性构成表结构。 这里以本书要使用到的学生成绩管理系统的三个表:学生表(表名为XSB)、 课程表(表名为KCB)和成绩表(表名为CJB)为例介绍如何设计表的结构。 最终设计出XSB的表结构如表3.3所示。
3. 1 以界面方式创建数据库(采用DBCA)
(2)在“操作”窗口中,用户可以选择要执行的操作,这里选中“创建数据 库”选项,如图3.2所示,单击“下一步”按钮。
3. 1 以界面方式创建数据库(采用DBCA)
(3)在“数据库模板”窗口中,选择相应选项后单击“显示详细资料”按钮可 查看该数据库模板的各种信息。这里选择“一般用途或事务处理”选项,如图3.3所 示,单击“下一步”按钮。
3.2.3 执行SQL命令
图3.22 在SQL Developer中运行SQL语句
3.2.3 执行SQL命令
这里是以执行创建表的CREATE TABLE命令(稍后在3.3节中详细介绍)为例, 操作前须先删除之前已创建的XSB表,输完命令后单击窗口上方的 或 按钮即 可执行该SQL语句重新创建XSB表。表建好后,往其中录入样本数据(见附录A)以 备后用,如图3.23所示。
3.2.2 表数据操作
说明:在输入“出生时间”列数据时,Oracle 11g默认的日期格式为“DD-MM
月-YY”,例如,日期“1997-02-10”应该输入“10-2月-97”。为能使用我们所习 惯的输入方式,这里先要修改一下数据库默认的日期格式,在SQL Developer命令 窗口中执行如下语句(具体操作见稍后的3.2.3节): ALTER SESSION SET NLS_DATE_FORMAT = "YYYY-MM-DD";
第3章 数据库的创建和操作
3. 1 以界面方式创建数据库(采用DBCA) 3. 2 以界面方式操作数据库(采用SQL Developer) 3. 3 命令方式操作数据库(采用SQL*Plus)
3. 1 以界面方式创建数据库(采用DBCA)
(1)启动DBCA,出现“欢迎使用”界面,如图3.1所示,单击“下一步”按 钮进入创建数据库的向导。
3. 1 以界面方式创建数据库(采用DBCA)
(12)创建数据库期间显示的创建进度窗口如图3.10所示,过程较为漫长,读 者要耐心地等待……
3. 1 以界面方式创建数据库(采用DBCA)
(13)创建数据库完毕后,系统会弹出窗口显示相关的提示信息,如图3.11所 示,需要在这一步解锁SCOTT、SYSTEM、SYS账户并设置其口令,单击窗口中的 “口令管理”按钮,弹出“口令管理”对话框。
3. 1 以界面方式创建数据库(采用DBCA)
(9)在“数据库内容”窗口中勾选“示例方案”,如图3.8所示,这样就可以 在学习的过程中参考标准设置,也可了解基础的数据库创建方法和SQL语言。
3. 1 以界面方式创建数据库(采用DBCA)
(10)在“初始化参数”和“数据库存储”窗口中也保持默认配置,两次单击 “下一步”按钮。 (11)在“创建选项”窗口中选择“创建数据库”选项,如图3.9所示,单击 “完成”按钮,之后会弹出确认创建的对话框,单击“确定”按钮开始创建数据库。
3.2.2 表数据操作
输入完一行数据后,单击 (提交更改)按钮将数据保存到数据库中,同时下 方的“消息 - 日志”子窗口列出用于插入数据的INSERT语句,如图3.18所示。
3.2.2 表数据操作
2.修改记录 修改记录的方法与插入类似,在“数据”选项页找到要修改的记录所在行,修 改后该行的行号前会出现一个“*”号,如图3.19所示,更改完成单击“提交”按 钮保存修改的数据。
3.2.1 表操作
(3)输完最后一列的信息后,选中右上角的“高级”复选框,这时会显示出 更多的表选项,如表类型、列的默认值、约束条件、外键和存储选项等,如图3.14 所示,例如要设置默认值可以在“列属性”选项页中该列的“默认”栏中输入默认 值。
3.2.1 表操作
5.修改表 使用SQL Developer工具修改表的方法很简单。XSB表创建完成后在主界面的 “表”目录下可以找到该表。右击XSB表选择“编辑”菜单项,进入“编辑表”窗 口(类似图3.14的界面),在该窗口中的“列”选项页右侧单击 按钮可以添加新 列,单击 按钮可以删除列,在“列属性”选项页的各栏中可以修改列的属性。 表的主键列不能直接删除,要删除必须先取消主键。单击窗口左侧的“主键” 选项,在窗口右边的“所选列”栏会显示已被设为主键的列,如图3.15所示。
3.2.1 表操作
6.删除表 以删除XSB表为例,在“表”目录下右击XSB表选择“表”菜单下的“删除” 子菜单项,如图3.16所示,之后弹出“删除”确认对话框,选中“级联约束条件” 复选框,单击“应用”按钮,弹出表已删除的提示消息,单击“确定”按钮即可。
3.2.2 表数据操作
1.插入记录 首先,启动SQL Developer,打开myorcl连接(需要输入SCOTT用户口令),展 开“表”目录,单击“XSB”表,在右边窗口中单击“数据”选项卡,切换到表数 据窗口,如图3.17所示。
3. 1 以界面方式创建数据库(采用DBCA)
(4)在“数据库标识”窗口中输入“全局数据库名”和“SID”,如图3.4所 示,单击“下一步”按钮。
3. 1 以界面方式创建数据库(采用DBCA)
(5)在“管理选项”窗口中可以选择配置Enterprise Manager企业管理器或 者配置Database Control管理本地数据库,这里保持默认设置,如图3.5所示,单击 “下一步”按钮。
3. 1 以界面方式创建数据库(采用DBCA)
至此,所有步骤都已全部完成。现在,系统服务中应该已经有SID为XSCJ的服 务选项并已置为“自动”启动,服务正在运行,如图3.12所示,访问XSCJ数据库前 必须保证已启动了这两个系统服务:OracleOraDb11g_home1TNSListener和 OracleServiceXSCJ。
3. 2 以界面方式操作数据库(采用SQL Developer)
1.表的概念 表是日常工作和生活中经常使用的一种表示数据及其关系的形式,表3.1就是 用来表示学生信息的一个学生表。
学 号 151101 151103 姓 名 王林 王燕 性 别 男 女 出生时间 1997-02-10 1996-10-06 专 业 计算机 计算机 总 学 分 50 50 备 注
列 名 学号 姓名 性别 出生时间 专业 总学分 备注 数据类型 char(6) char(8) char(2) date char(12) number(2) varchar2(200) 是否可空 × × × × √ √ √ 默 认 值 无 无 “男” 无 无 0 无 说 明 主键
0 ≤总学分<100
(1)表结构:每个表都包含一组固定的列,而列由数据类型(DATATYPE)和 长度(LENGTH)两部分组成,以描述该表所代表的实体的属性。 (2)记录:每个表包含了若干行数据,它们是表的“值”,其中的一行称为 一个记录,因此,表是记录的有限集合。 (3)字段:每个记录由若干个数据项构成,将构成记录的数据项称为字段。 例如,表3.1的XSB,其表结构为(学号,姓名,性别,出生时间,专业,总学 分,备注),包含7个字段,由5个记录组成。 (4)关键字:若表中记录的某个字段或字段组合能唯一标识记录,则称该字 段(字段组合)为候选关键字(Candidate Key)。若一个表有多个候选关键字,则 选定其中一个为主关键字(Primary Key),也称为主键。
3.2.2 表数据操作
3.删除记录 如果要删除一行记录,选中该行,单击 (删除所选行)按钮,之后该行的行号 前会出现一个“-”号,如图3.20所示,单击“提交”按钮确认删除。
3.2.2 表数据操作
4.撤销操作 如果需要撤销之前对表中记录所做的操作,只需在单击“提交”按钮之前单击 (回退)按钮即可,如图3.21所示,为撤销上一步的删除操作。
3. 3 命令方式操作数据库(采用 SQL*Plus)
在以自己的模式创建表时,必须拥有CREATE TABLE系统权限;在其他用户模 式下创建表时,必须拥有CREATE ANY TABLE系统权限。Oracle创建表使用CREATE TABLE语句,基本的语法格式为: CREATE TABLE [<用户方案名>.] <表名> ( <列名1> <数据类型> [DEFAULT <默认值>] [<列约束>] <列名2> <数据类型> [DEFAULT <默认值>] [<列约束>] [,…n] <表约束>[,…n] ) [AHale Waihona Puke Baidu <子查询>]
表3.5 CJB的表结构
说 明 主键 主键
3.2.1 表操作
4.创建表 (1)启动SQL Developer,在“连接”节点下打开数据库连接myorcl(已创 建)。右击“表”节点,选择“新建表”菜单项。 (2)进入“创建表”窗口,在“名称”栏中填写表名XSB,在“表”选项卡 的“列名”、“类型”、“大小”、“非空”、“主键”栏中分别填入(选择) XSB表的“学号”列的列名、数据类型、长度、非空性和是否为主键等信息,完成 后单击“添加列”按钮输入下一列,直到所有的列输入完为止,如图3.13所示。
3.2.1 表操作
151108
151202 151204
林一帆
王林 马琳琳
男
男 女
1996-08-05
1996-01-29 1996-02-10
计算机
通信工程 通信工程
52
40 42
已提前修完一门课
有一门课不及格,待补 考
3.2.1 表操作
关系数据库使用表(即关系)来表示实体及其联系。表包含下列概念。
3.2.3 执行SQL命令
使用SQL Developer不仅可以以图形界面方式操作数据库表中的记录,还可以 直接编辑和运行SQL语句。启动SQL Developer,单击工具栏 按钮的右下箭头 选择“myorcl”,界面上将出现命令编辑区,如图3.22所示,在其中输入要运行的 SQL语句,如下: CREATE TABLE XSB ( 学号 char(6) NOT NULL PRIMARY KEY, 姓名 char(8) NOT NULL, 性别 char(2) DEFAULT '男' NOT NULL, 出生时间 date NOT NULL, 专业 char(12) NULL, 总学分 number(2) NULL, 备注 varchar2(200) NULL );
3.2.1 表操作
参照XSB表结构的设计方法,同样可以设计出其他两个表的结构。如表3.4所 示是KCB的表结构,表3.5是CJB的表结构。 表3.4 KCB的表结构
列 名 课程号 课程名 开课学期 学时 学分 列 名 学号 课程号 成绩 数据类型 char(3) char(16) number(1) number(2) number(1) 数据类型 char(6) char(3) number(2) 是否可空 × × √ √ × 是否可空 × × √ 默 认 值 无 无 1 0 0 默 认 值 无 无 无 说 明 主键 只能为1~8