数据表中数据的管理(转)

本文介绍了如何操作数据表中的数据,包括向导师信息表和研究生信息表插入数据,给出了插入日期型数据的方法及对应 SQL 代码;还说明了查询、更新和删除数据表数据的操作,如通过主码定位记录更新数据,以及给出了删除数据的 SQL 语句。
数据表中数据的管理:


下面介绍如何操作数据表中的数据。
向数据表中插入数据
1. 向导师信息表中插入数据
(1)在图7.19所示的快捷菜单中选择【表数据编辑器】选项,出现如图7.21所示的界面。可以按照二维表格输入数据。
(2)单击0653011511719415.JPG按钮可以查看输入的数据对应的SQL代码。
(3)数据输入完毕后,单击0653011511843354.JPG按钮可以完成数据的插入。
0653011511832142.JPG
(4)上述过程对应的SQL代码如下。
―――――――――――――――――――――――――――――――――――――
INSERT INTO "SCOTT"."DIRECTOR" ("DIRECTOR_ID" ,"NAME" ,"ZHICHENG" ,"ZHIWU" )
VALUES (200201 , '张三丰' ,'博导' , '系主任');
INSERT INTO "SCOTT"."DIRECTOR" ("DIRECTOR_ID" ,"NAME" ,"ZHICHENG" ,"ZHIWU" )
VALUES (200202 , '张翠山' ,'硕导' , '室主任');
INSERT INTO "SCOTT"."DIRECTOR" ("DIRECTOR_ID" ,"NAME" ,"ZHICHENG" ,"ZHIWU" )
VALUES (200203 , '张无忌' ,'硕导' , '所主任' );
INSERT INTO "SCOTT"."DIRECTOR" ("DIRECTOR_ID" ,"NAME" ,"ZHICHENG" ,"ZHIWU" )
VALUES (200204 , '宋远桥' ,'博导' ,'系副主任' );
―――――――――――――――――――――――――――――――――――――
【参见光盘文件】:第7章insertdirector.sql
(5)读者也可以在【SQL Plus Worksheet】中直接执行insertdirector.sql 文件向数据表scott.director中插入数据。
2. 向研究生信息表中插入数据
(1)对研究生信息表进行同样的数据插入操作。如图7.22所示。
0653011511945910.JPG
(2)字段“BIRTHDAY”是日期型字段,读者可能不知道该如何插入日期型的数据。单击0653011512137263.JPG按钮,出现如图7.23所示的界面。
可以观察到这样的日期型字段数据插入格式。
―――――――――――――――――――――――――――――――――――――
TO_DATE('', 'dd-Mon-yyyy HH:MI:SS AM')
―――――――――――――――――――――――――――――――――――――
这表明日期型字段是按照“日期-月份-年 小时 分钟 秒”来插入的。
065301151217002.JPG
(3)分析出格式还不一定能够正确录入日期型数据。这里告诉读者一个笔者摸索出来的简便的办法。在scott用户下有一个数据表emp,其中有一个hiredate字段是日期型的。
0653011512633337.JPG
(4)最后完成完整的scott.student数据表数据的插入,如图7.25所示。
0653011513143273.JPG
【参见光盘文件】:第7章insertstudent.sql
(5)上述过程对应的SQL代码如下。读者也可以在【SQLPlus Worksheet】中直接执行insertstudent.sql文件完成数据的插入。
―――――――――――――――――――――――――――――――――――――
INSERT INTO "SCOTT"."STUDENT"
("STUDENT_ID" ,"NAME" ,"PROFESSIONAL" ,"BIRTHDAY" ,"DIRECTOR_ID" )
VALUES (20020101 ,'周芷若' ,'软件工程' ,TO_DATE('20-11月-1976', 'dd-Mon-yyyy HH:MI:SS AM') ,200201 );
INSERT INTO "SCOTT"."STUDENT"
("STUDENT_ID" ,"NAME" ,"PROFESSIONAL" ,"BIRTHDAY" ,"DIRECTOR_ID" )
VALUES (20020102 ,'赵敏' ,'计算机安全' ,TO_DATE('7-10月-1980', 'dd-Mon-yyyy HH:MI:SS AM') ,200202 );
INSERT INTO "SCOTT"."STUDENT"
("STUDENT_ID" ,"NAME" ,"PROFESSIONAL" ,"BIRTHDAY" ,"DIRECTOR_ID" )
VALUES (20020103 ,'小昭' ,'图形图像' ,TO_DATE('22-10月-1973', 'dd-Mon-yyyy HH:MI:SS AM') ,200203 );
INSERT INTO "SCOTT"."STUDENT"
("STUDENT_ID" ,"NAME" ,"PROFESSIONAL" ,"BIRTHDAY" ,"DIRECTOR_ID" )
VALUES (20020104 ,'蛛儿' ,'电子商务' ,TO_DATE('11-1月-1971', 'dd-Mon-yyyy HH:MI:SS AM') ,200204 );
INSERT INTO "SCOTT"."STUDENT"
("STUDENT_ID" ,"NAME" ,"PROFESSIONAL" ,"BIRTHDAY" ,"DIRECTOR_ID" )
VALUES (20030101 ,'金花婆婆' ,'数据库' ,TO_DATE('6-8月-1945', 'dd-Mon-yyyy HH:MI:SS AM') ,200201 );
INSERT INTO "SCOTT"."STUDENT"
("STUDENT_ID" ,"NAME" ,"PROFESSIONAL" ,"BIRTHDAY" ,"DIRECTOR_ID" )
VALUES (20030102 ,'胡青牛' ,'网络安全' ,TO_DATE('2-5月-1923', 'dd-Mon-yyyy HH:MI:SS AM') ,200203 );
INSERT INTO "SCOTT"."STUDENT"
("STUDENT_ID" ,"NAME" ,"PROFESSIONAL" ,"BIRTHDAY" ,"DIRECTOR_ID" )
VALUES (20030103 ,'丁敏君' ,'Web技术' ,TO_DATE('12-4月-1967', 'dd-Mon-yyyy HH:MI:SS AM') ,200201 );
INSERT INTO "SCOTT"."STUDENT"
("STUDENT_ID" ,"NAME" ,"PROFESSIONAL" ,"BIRTHDAY" ,"DIRECTOR_ID" )
VALUES (20030104 ,'殷素素' ,'Web安全' ,TO_DATE('14-7月-1971', 'dd-Mon-yyyy HH:MI:SS AM') ,200202 );
Commit;
―――――――――――――――――――――――――――――――――――――
查询数据表的数据
1. 查询导师信息表数据
(1)利用【SQLPlus Worksheet】执行下列语句。
―――――――――――――――――――――――――――――――――――――
select * from scott.director;
―――――――――――――――――――――――――――――――――――――
【参见光盘文件】:第7章selectdirector.sql
(2)查询结果如图7.26所示。
2. 查询研究生信息表数据
(1)利用【SQLPlus Worksheet】执行下列语句。
―――――――――――――――――――――――――――――――――――――
select * from scott.student;
―――――――――――――――――――――――――――――――――――――
【参见光盘文件】:第7章selectstudent.sql
(2)查询结果如图7.27所示。
0653011513364234.JPG
更新数据表的数据
1. 更新导师信息表数据
(1)图7.28所示为数据表编辑器界面。在表格中直接将“DIRECTOR_ID”为“200204”的导师的“ZHIWU”由“系副主任”更改为“院长”。
065301151343156.JPG
(2)单击0653011513786842.JPG按钮,出现的更新数据的SQL语句如下。
0653011513763815.JPG
(3)读者可能会疑惑,rowid = 'AAAH2kAAIAAAAAyAAD'代表什么意思?
(4)Oracle 9i在创建数据表时,默认会为每个数据表建立一个隐含的字段,叫ROWID。在向数据表中插入记录时,系统将自动为每条记录分配惟一的一个ROWID号,利用这个ROWID号,可以快速定位到记录。
(5)但是,利用ROWID更新数据的SQL语句只适用在同一台计算机上。不同的计算机环境可能为数据会分配不同的ROWID号,因此,我们需要给出一种普遍适用的更新数据表数据的语法。
(6)在【SQLPlus Worksheet】中执行下列语句,作用是一样的。这是通过主码DIRECTOR_ID来定位记录的。这样的更新语句适合在不同的计算机环境上使用。
执行结果如图7.29所示。
0653011513971753.JPG
0653011514382200.JPG
2. 更新研究生信息表数据
按照同样的方法可以更新研究生数据表的数据。
(1)在表数据编辑器中将研究生编号STUDENT_ID为“20030103”的研究生的导师编号字段DIRECTOR更改为200204,如图7.30所示。
0653011514599245.JPG
(2)对应的SQL代码如下。
―――――――――――――――――――――――――――――――――――――
UPDATE "SCOTT"."STUDENT"
SET DIRECTOR_ID = 200204
WHERE STUDENT_ID = 20030103;
―――――――――――――――――――――――――――――――――――――
【参见光盘文件】:第7章updatestudent.sql

删除数据表的数据

(1)在图7.31所示的表数据编辑器界面中执行下列操作。
065301151472741.JPG
(2)删除数据的SQL语句如下。
―――――――――――――――――――――――――――――――――――――
DELETE FROM "SCOTT"."STUDENT"
WHERE STUDENT_ID = 20030101;
―――――――――――――――――――――――――――――――――――――


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-123159/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10294527/viewspace-123159/

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值