本章要点 .删除和创建数据库 .表空间 在Oracle数据库系统安装完成后,可以创建自己需要的数据库,在数据库应用和开发 过程中,需要对数据库使用的表空间进行管理。 3.删除和创建数据库 1 本书在安装Oracle数据库时,已创建了数据库orcl,学生信息数据stsystem是本书的 案例数据库,在以后的例题中会多次用到,现在使用图形界面方式的数据库配置助手 (DatabaseConfigurationAsistant,DBCA)删除数据库orcl,再重新创建数据库stsystem 。 3.1 删除数据库 1. 删除数据库的举例如下 。 【例3.使用DBCA删除数据库orc 1】l 。 使用DBCA删除数据库orcl的操作步骤如下 。 (1)选择“开始”→Oracle-OraDB19Home1→DatabaseConfigurationAsistant命令, 如图3. 1所示。 图3.atabaseConfigurationAsistant命令 1 选择D (2)在弹出的“选择数据库操作”窗口中,选中“删除数据库”单选按钮,如图3.2所示, 然后单击“下一步”按钮。 62 图3.选择数据库操作”窗口 2“ 按钮 ( 。 3)进入“ 窗口, 如图3.单击“ 选择源数据库” 这里选择ORCL 数据库,3所示, 下一步” 图3.选择源数据库”窗口 3“ 63 (4)进入“选择注销管理选项”窗口,单击“下一步”按钮, 概要”窗口,如图3. 进入“4所 示,单击“完成”按钮,在弹出的确认删除提示框中单击“是”按钮,将会显示删除进度,直至完 成删除数据库操作。 图3.4 “概要”窗口 3.2 创建数据库 1. 使用图形界面方式的数据库配置助手DBCA创建数据库的举例如下 。 【例3.使用DBCA创建数据库ssyst 2】 tsysttem 。 使用DBCA创建数据库sem的操作步骤如下 。 (1)选择“开始”→Oracle-OraDB19Home1→DatabaseConfiurationAsistant命令。 (2)在弹出的“ 窗口中, 创建数据库” g 单选按钮,如图3. 选择数据库操作” 选中“5所示。 (3)单击“ 按钮, 选择数据库创建模式”对话框,如图3. 下一步” 将弹出“6所示。 .在“全局数据库名”文本框中输入stsystem 。 .在“数据库字符集”下拉框中选择“ZHS16GBK-BGK16位简体中文”。 .在“管理口令”“确认口令”和“Oracle主目录用户口令”文本框中,分别输入 Ora123456 。 .取消选中“创建为容器数据库”复选框。 (4)单击“下一步” 进入“ 窗口,7所示, 完成” 出现“ 按钮, 概要” 如图3.单击“ 按钮, 进度 页”提示框,直至数据库stsystem创建完成。 64 图3.选择数据库操作”窗口 5“ 图3.选择数据库创建模式”窗口 6“ 65 图3.7 “概要”窗口 3.2 表 空 间 下面介绍在SQL*Plus中使用PL/SQL 语句对表空间进行创建、管理和删除。 3.2.1 创建表空间 创建表空间在SQL*Plus中使用CREATETABLESPACE语句,创建的用户必须拥 有CREATETABLESPACE系统权限,在创建之前必须创建包含表空间的数据库。 语法格式: CREATE TABLESPACE tablespace_name DATAFILE filename SINE size [AUTOEXTENO[ON/OFF]]NEXT size [MAXSIZE size] [PERMANENT|TEMPORARY] [EXTENT MANAGEMENT [DICTIONARY|LOCAL [AUTOALLOCATE|UNIFORM.[SIZE integer[K|M]]]]] 说明: .tablespace_name:创建的表空间的名称。 . DATAFILEfilenameSINEsize:在表空间中存放数据文件的名称和大小。 . [AUTOEXTENO[ON/OFF]]NEXTsize:指定数据文件的扩展方式,ON 为自动 66 扩展,OFF为非自动扩展,NEXTsize指定自动扩展的大小。 . [MAXSIZEsize]:指定数据文件为自动扩展方式的最大值。 . [PERMANENT|TEMPORARY]:指定表空间的类型,PERMANENT 为永久性 表空间,TEMPORARY为临时性表空间。如果不指定表空间的类型,则默认为永 久性表空间。 . EXTENT MANAGEMENT DICTIONARY|LOCAL:指定表空间的管理方式, DICTIONARY为字典管理方式,LOCAL为本地管理方式。默认管理方式为本地 管理方式。 启动SQL*Plus,在提示符SQL>后,即可输入以下例题代码,按Enter键执行后,在 SQL*Plus窗口中将会出现运行结果。 【例3.3】 创建表空间testspace1、testspace2、testspace3,各个表空间大小为50MB,禁 止自动扩展数据文件。 代码和运行结果如下: SQL>CREATE TABLESPACE testspace1 2 DATAFILE 'D:\app\testspace1_1.DBF' SIZE 50M 3 AUTOEXTEND OFF; 表空间已创建。 SQL>CREATE TABLESPACE testspace2 2 DATAFILE 'D:\app\testspace2_1.DBF' SIZE 50M 3 AUTOEXTEND OFF; 表空间已创建。 SQL>CREATE TABLESPACE testspace3 2 DATAFILE 'D:\app\testspace3_1.DBF' SIZE 50M 3 AUTOEXTEND OFF; 表空间已创建。 【例3.4】 创建表空间testspace4、testspace5、testspace6,各个表空间大小为50MB,允 许自动扩展数据文件。 代码和运行结果如下: SQL>CREATE TABLESPACE testspace4 2 DATAFILE 'D:\app\testspace4_1.DBF' SIZE 50M 3 AUTOEXTEND ON NEXT 5M MAXSIZE 100M 4 EXTENT MANAGEMENT LOCAL 5 UNIFORM SIZE 2M; 表空间已创建。 SQL>CREATE TABLESPACE testspace5 2 DATAFILE 'D:\app\testspace5_1.DBF' SIZE 50M 3 AUTOEXTEND ON NEXT 5M MAXSIZE 100M 4 EXTENT MANAGEMENT LOCAL 67 5 UNIFORM SIZE 2M; 表空间已创建。 SQL>CREATE TABLESPACE testspace6 2 DATAFILE 'D:\app\testspace6_1.DBF' SIZE 50M 3 AUTOEXTEND ON NEXT 5M MAXSIZE 100M 4 EXTENT MANAGEMENT LOCAL 5 UNIFORM SIZE 2M; 表空间已创建。 3.2.2 表空间的基本管理 表空间的基本管理包括更改表空间的名称和删除表空间。 1.更改表空间的名称 在SQL*Plus中使用ALTERTABLESPACE语句更改表空间的名称。 语法格式: ALTER TABLESPACE oldname RENAME TO newname 【例3.5】 将表空间testspace6更名为newspace6。 代码和运行结果如下: SQL>ALTER TABLESPACE testspace6 RENAME TO newspace6; 表空间已更改。 2.删除表空间 在SQL*Plus中使用DROPTABLESPACE语句删除已经创建的表空间。 语法格式: DROP TABLESPACE <表空间名> [ INCLUDING CONTENTS [ {AND | KEEP} DATAFILES ] [ CASCADE CONSTRAINTS ] ] ; 【例3.6】 删除表空间newspace6及其对应的数据文件。 代码和运行结果如下: SQL>DROP TABLESPACE newspace6 2 INCLUDING CONTENTS AND DATAFILES; 表空间已删除。 3.3 小 结 本章主要介绍了以下内容。 (1)使用图形界面方式创建和删除数据库。 68 (2)在SQL*Plus中,使用CREATETABLESPACE语句创建表空间,使用ALTER TABLESPACE语句更改表空间的名称,使用DROPTABLESPACE语句删除表空间。 习题 3 一、选择题 1.使用图形界面方式创建数据库的工具是。 A.OracleNetManager B.DatabaseConfigurationAsistant C.SQL*Plus D.OracleSQLDeveloper 2.当数据库创建时,哪个表空间会自动生成 。 A.SYSTEM表空间B.TEMP表空 间 C.USERS表空间D.TOOLS表空 间 二、填空题 1.创建表空间使用语句。 2.删除表空间使用语句。 三、问答题 1.简述使用图形界面创建数据库的步骤。 2.简述使用图形界面删除数据库的步骤。 四、应用题 1.创建表空间tbspace,大小为35MB,禁止自动扩展数据文件。 2.创建表空间tbspace1,允许自动扩展数据文件。 3.将表空间tbspace1更名为tbspace2。 4.删除表空间tbspace2及其对应的数据文件。 本章要点 .表的基本概念 .数据类型 .表结构设计 .使用图形界面方式定义表 .使用PL/SQL 语句定义表 .使用PL/SQL 语句操作表数据 .使用图形界面方式操作表数据 .分区表 数据库对象是构成数据库的组成元素,在Oracle数据库中,有多种类型的数据库对象, 如表、视图、索引、存储过程、触发器等。表是数据库中最基本的数据库对象,用来存储数据 库中的数据。 4.表的基本概念 1 在创建数据库的过程中,最重要的一步就是创建表,在工作和生活中,表是经常使用的 一种表示数据及其关系的形式,在学生信息系统中,1所示。 学生表如表4. 表4.学生表(t) 1 studen 学号姓名性别出生日期专业总学分 221001 221002 221004 224001 224002 224003 何德明 王丽 田桂芳 周思远 许月琴 孙俊松 男 女 女 男 女 男 2001-07-16 2002-09-21 2021-12-05 2001-03-18 2002-06-23 2001-10-07 计算机 计算机 计算机 通信 通信 通信 52 50 52 52 48 50 Oracle数据库中的表包含以下几个基本概念。 (1)表。表是数据库中存储数据的数据库对象,每个数据库包含了若干表,表由行和列 组成。例如,表4. 1的内容由6行6列组成。 70 (2)表结构。每个表具有一定的结构,表结构包含一组固定的列,列由数据类型、长度、 允许Nul 值等组成。 表中一行称为一个记录(eod)。表4. 记录 ( 。 3)记录。每个表包含若干行数据, Rcr1中有6个 (4)字段。表中每列称为字段(Field),每个记录由若干数据项(列)构成,构成记录的每 个数据项就称为字段。表4. 1中有6个字段。 (5)空值。空值(Nul)通常表示未知、不可用或将在以后添加的数据。 (6)关键字。关键字用于唯一标识记录,如果表中记录的某一字段或字段组合能唯一 标识记录,则该字段或字段组合称为候选关键字(CandidateKey)。如果一个表有多个候选 关键字,则选定其中的一个为主关键字(rmayKe又称为主键。表4. Piry), 1中的主键为 “学号”。 4.数据类型 2 介绍 O 。 racle常用的数据类型有数值型、字符型、日期型、其他数据类型等,下面分别进行 1.数值型 常用的数值型有numbr、la其格式和取值范围如表4. efot两种,2所示。 表4.数值型 2 数据类型格式说明 number NUMBER[(<总位数>[,<小 数点右边的位数>)] 可变长度数值列,允许值为0、正数和负数,总位数默 认为38,小数点右边的位数默认为0 float FLOAT[(<数值位数>)] 浮点型数值列 2.字符型 常用的字符型有char、nchar、varchar2、nvarchar2、long这5种,它们在数据库中以 ASCI 码的格式存储,其取值范围和作用如表4. 3所示。 表4.字符型 3 数据类型格式说明 char CHAR[(<长度>[BYTE|CHAR])] 固定长度字符域,最大长度为2000B nchar NCHAR[(<长度>)] 多字节字符集的固定长度字符域,最多为 2000个字符或2000B varchar2 VARCHAR2[(<长度>[BYTE|CHAR])] 可变长度字符域,最大长度为4000B nvarchar2 NVARCHAR2[(<长度>)] 多字节字符集的可变长度字符域,最多为 4000个字符或4000B long LONG 可变长度字符域,最大长度为2GB 71 3.日期型 日期型常用的有date和timestamp两种,用来存放日期和时间,取值范围和作用如 表4. 4所示。 表4.日期型 4 数据类型格式说明 date DATE 存储全部日期和时间的固定长度字符域,长度为 7B,查询时日期默认格式为DD-MON-RR,除非通过 设置NLS_DATE_FORMAT参数取代默认格式 timestamp TIMESTAMP[(<位数>)] 用亚秒的粒度存储一个日期和时间,参数是亚秒粒 度的位数,默认为6,范围为0~9 4.其他数据类型 除上述类型外,Oracle11g还提供存放大数据的数据类型和二进制文件的数据类型 blob、clob、bfile,如表4. 5所示。 表4.其他数据类型 5 数据类型格式说明 blob BLOB 二进制大对象,最大为4GB clob CLOB 字符大对象,最大为4GB bfile BFILE 外部二进制文件,大小由操作系统决定 4.表结构设计 3 在数据库设计过程中,最重要的是表结构设计,好的表结构设计,对应着较高的效率和 安全性,而差的表结构设计,对应着较低的效率和安全性。 创建表的核心是定义表结构及设置表和列的属性,创建表以前,首先要确定表名和表的 属性,表所包含的列名及列的数据类型、长度、非空、是否主键等,这些属性构成表结构。 例如,学生表student包含sid、sname 、 sex、sbirthday、speciality、tc等列。 .sid列是学生的学号,例如,221001中的22表示2022年入学,01表示学生的序号, 所以sid列的数据类型选字符型char[(n)],n的值为6,不允许空。 .sname列是学生的姓名,姓名一般不超过4个中文字符,所以选字符型char[(n)],n 的值为12,不允许空。 . sex列是学生的性别,选字符型char[(n)],n的值为3,不允许空。 .sbirthday列是学生的出生日期,选date数据类型,不允许空。 .speciality列是学生的专业,选字符型char[(n)],n的值为12,允许空。 .tc列是学生的总学分,选number数据类型,允许空。 在student表中,只有sid列能唯一标识一个学生,所以将sid列设为主键。student的 72 表结构设计如表4. 6所示。 表4.t的表结构 6 studen 列名数据类型非空是否主键说明 sid sname sex sbirthdayspecialitytc char(6) char(12) char(3) date char(12) number √ √ √ √ 主键学号 姓名 性别 出生日期 专业 总学分 4.使用图形界面方式定义表 4 定义表包括创建表、修改表、删除表等内容,本节介绍使用图形界面方式创建表、修改 表、删除表,5节介绍使用PL/SQL语句创建表、修改表、删除表。 4. 4.使用图形界面方式创建表 4.1 使用图形界面方式创建表的举例如下。 【例4.在sssem数据库中创建suet表。 1】tyttdn 创建student表的操作步骤如下 。 (1)启动SQLDeveloper,在“连接”节点下打开数据库连接st_test,右击“表”节点,在 弹出的快捷菜单中选择“新建表”命令。 (2)屏幕出现“创建表”对话框,在“名称”文本框中输入表名STUDENT,根据已经设计好 的student的表结构分别输入或选择SID 、SNAME 、SSEX 、SBIRTHDAY 、SPECIALITY 、 TC等列的PK(是否主键)、列名、数据类型、长度大小、非空性等栏信息,输入完一列后单击 “+”按钮添加下一列,1所示。 输入完成后的结果如图4. (3)输完最后一列的信息后,选中右上角的“高级”复选框,此时会显示出更多的表的选 项,如表的类型、约束条件和存储选项等,2所示。 列的默认值、如图4. (4)单击“确定”按钮,创建student表完成。 4.2 使用图形界面方式修改表 4. 使用图形界面方式修改表结构(如增加列、删除列、修改已有列的属性等)的举例如下。 【例4.在student表中增加一列telephone, 2】然后删除该列 。 操作步骤如下 。 (1)启动SQLDeveloper,在“连接”节点下打开数据库连接st_test,展开“表”节点,选 中表student后右击,在弹出的快捷菜单中选择“编辑”命令。 (2)进入“编辑表”对话框,单击“+”按钮,在“列属性”栏的“名称”框中输入 TELEPHONE,在“ 框中选择VARCGAR2, 大小”框中输入11,如图4.单 类型” 在“3所示, 击“确定”按钮,完成插入新列TELEPHONE的操作。 73 图4.创建表”对话框 1“ 图4.2 选中“高级”复选框 (3)选中表student后右击,在弹出的快捷菜单中选择“编辑”命令,进入“编辑表”对话 列” 如图4. 框,在“ 栏中选中TELEPHONE, 4所示,单击 按钮,TELEPHONE 列即被删 74 图4. 3 插入列操作 除,单击“确定”按钮,完成删除TELEPHONE 列的操作。 图4. 4 删除列操作 75 4.4.3 使用图形界面方式删除表 当表不需要的时候,可将其删除。删除表时,表的结构定义、表中的所有数据及表的索 引、触发器、约束等都被删除掉。下面介绍使用图形界面方式删除表。 【例4.3】 删除student表。 (1)启动SQLDeveloper,在“连接”节点下打开数据库连接st_test,展开“表”节点,选 中表student并右击,在弹出的快捷菜单中选择“表”→“删除”命令。 (2)进入“删除”对话框,单击“应用”按钮,将弹出“确认”对话框,单击“确定”按钮,即可 删除student表。 4.5 使用PL/SQL语句定义表 本节介绍使用PL/SQL语句创建表、修改表、删除表。 4.5.1 使用PL/SQL语句创建表 使用CREATETABLE语句创建表。 语法格式: CREATE TABLE [<用户方案名>.] <表名> ( <列名1> <数据类型> [DEFAULT <默认值>] [<列约束>] <列名2> <数据类型> [DEFAULT <默认值>] [<列约束>] [,…n] <表约束>[,…n] ) [PCTFREE <数字值>] [PCTUSED <数字值>] [INITRANS <数字值>] [MAXTRANS <最大并发事务数>] [TABLESPACE <表空间名>] [STORGE <参数>] [AS <子查询>] 【例4.4】 使用PL/SQL语句,在stsystem 数据库中创建student表。 CREATE TABLE student ( sid char(6) NOT NULL PRIMARY KEY, sname char(12) NOT NULL, ssex char(3) NOT NULL, sbirthday date NOT NULL, speciality char(12) NULL, tc number NULL 76 ); 启动SQLDeveloper,在主界面中展开st_test连接,单击工具栏中的按钮,主界面 弹出“工作表”窗口,在窗口中输入上述语句,单击按钮,在“脚本输出”窗口显示“Table STUDENT 已创建。”,如图4.5所示。 图4.5 创建student表的“工作表”窗口和“脚本输出”窗口 提示: 由一条或多条PL/SQL语句组成一个程序,通常以.sql为扩展名存储,称为sql脚本。 SQL工作表窗口内的PL/SQL语句,可通过“文件”→“保存”命令命名并存入指定目录。 4.5.2 使用PL/SQL语句修改表 使用ALTERTABLE语句来修改表的结构。 语法格式: ALTER TABLE [<用户方案名>.] <表名> [ ADD(<新列名><数据类型>[DEFAULT <默认值>][列约束],…n) ] /*增加新列*/ [ MODIFY([ <列名>[<数据类型>] [DEFAULT <默认值>][列约束],…n)] /*修改已有列的属性*/ [ STORAGE <存储参数>] /*修改存储特征*/ [] /*删除列或约束条件*/ 其中,用于从表中删除列或约束。 语法格式: ::= 77 DROP { COLUMN <列名> ∣ PRIMARY [KEY] ∣ UNIQUE (<列名>,…n) ∣ CONSTRAINT <约束名> ∣[ CASCADE ] } 【例4.5】 使用ALTERTABLE语句修改stsystem 数据库中的student表。 (1)在student表中增加一列native。 ALTER TABLE student ADD native varchar(12); (2)在student表中删除native列。 ALTER TABLE student DROP COLUMN native; 4.5.3 使用PL/SQL语句删除表 使用DROPTABLE语句删除表。 语法格式: DROP TABLE table_name 其中,table_name是要删除的表的名称。 【例4.6】 删除stsystem 数据库中的student表。 DROP TABLE student; 4.6 使用PL/SQL语句操作表数据 对表中数据进行的操作,包括数据的插入、删除和修改。本节介绍使用PL/SQL语句 操作表数据,4.7节介绍采用图形界面方式操作表数据。 4.6.1 使用PL/SQL语句插入记录 在数据库中可用INSERT 语句向数据库的表插入一行数据,由VALUES给定该行各 列的值。 语法格式: INSERT INTO <表名>[(<列名1>,<列名2>,…n)] VALUES(<列值1>,<列值2>,…n) 其中,列值表必须与列名表一一对应,且数据类型相同。向表的所有列添加数据时,可以省 78 略列名表,但列值表必须与列名表顺序和数据类型一致。 在输入student表的sbirthday列的数据时,数据库默认的日期格式是:DD-MON-RR, 为了将日期格式改为习惯的格式:YYYY-MM-DD,需要在SQLDeveloper命令窗口中执 行以下语句: ALTER SESSION SET NLS_DATE_FORMAT="YYYY-MM-DD"; 说明:该语句只在当前会话中起作用,下次打开SQLDeveloper窗口,还需重新执行该 语句。 注意:使用PL/SQL语句进行数据的插入、修改和删除后,为将数据的改变保存到数据 库中,应使用COMMIT命令进行提交,使用方法如下: COMMIT; 本书后面的SQL语句都省略COMMIT命令,运行时请读者添加。 1.对表的所有列插入数据 1)省略列名表 必须为每个列都插入数据,值的顺序必须与表定义的列的顺序一一对应,且数据类型 相同。设 student表、student1表已创建,其表结构参见附录B。 【例4.7】 使用省略列名表的插入语句,对student1表插入一条记录('221001','何德 明','男',2' 0010716','YYYYMMDD'),'计算机',52)。 代码如下: INSERT INTO student1 VALUES('221001','何德明','男',TO_DATE('20010716','YYYYMMDD'),'计算机',52); 由于插入的数据包含各列的值并按表中各列的顺序列出这些值,所以省略列名表。 2)不省略列名表 如果插入值的顺序和表定义的列的顺序不同,在插入全部列时,则不能省略列名表。 【例4.8】 使用不省略列名表的插入语句,对student1表插入一条记录,姓名为“王 丽”,专业为“计算机”,学号为“221002”,性别为“女”,出生日期为“20020921”,总学分为50。 代码如下: INSERT INTO student1(sname, speciality, sid, ssex, sbirthday, tc) VALUES('王丽', '计算机','221002', '女',TO_DATE('20020921','YYYYMMDD'), 50); 2.对表的指定列插入数据 在插入语句中,只给出了部分列的值,其他列的值为表定义时的默认值,或允许该列取 空值。此时,不能省略列名表。 【例4.9】 只给出部分列的值,对student1表插入一条记录,学号为“224004”,专业为 “通信”,学分空值,姓名为“颜群”,性别为“女”,出生日期为“20020112”。 代码如下: 79 INSERT INTO student1(sid, speciality, sname, ssex, sbirthday) VALUES('224004','通信','颜群','女', TO_DATE('20020112','YYYYMMDD')); 3.插入多条记录 【例4.10】 向student表插入表4.1各行的数据。 向student表插入表4.1各行数据的代码如下: INSERT INTO student VALUES('221001','何德明','男',TO_DATE('20010716','YYYYMMDD'), '计算机',52); INSERT INTO student VALUES('221002','王丽','女',TO_DATE('20020921','YYYYMMDD'), '计算机',50); INSERT INTO student VALUES('221004','田桂芳','女',TO_DATE('20021205','YYYYMMDD'), '计算机',52); INSERT INTO student VALUES('224001','周思远','男',TO_DATE('20010318','YYYYMMDD'), '通信',52); INSERT INTO student VALUES('224002','许月琴','女',TO_DATE('20020623','YYYYMMDD'), '通信',48); INSERT INTO student VALUES('224003','孙俊松','男',TO_DATE('20011007','YYYYMMDD'), '通信',50); 使用SELECT语句查询插入的数据: SELECT * FROM student; 查询结果: SID SNAME SSEX SBIRTHDAY SPECIALITY TC --------- ------- ----- ------------ ------------- ------ 221001 何德明 男 2001-07-16 计算机 52 221002 王丽 女 2002-09-21 计算机 50 221004 田桂芳 女 2002-12-05 计算机 52 224001 周思远 男 2001-03-18 通信 52 224002 许月琴 女 2002-06-23 通信 48 224003 孙俊松 男 2001-10-07 通信 50 4.6.2 使用PL/SQL语句修改记录 在数据库中可用UPDATE语句来修改表中指定记录的列值。 语法格式: UPDATE <表名> SET <列名>={<新值>|<表达式>} [,…n] [WHERE <条件表达式>] 其中,在满足WHERE子句条件的行中,将SET 子句指定的各列的列值设置为SET 指定 的新值,如果省略WHERE子句,则更新所有行的指定列值。 80 注意:UPDATE语句修改的是一行或多行中的列。 1.修改指定记录 修改指定记录需要通过WHERE子句指定要修改的记录满足的条件。 【例4.11】 在course表中,将数据结构的学分修改为4分。 代码如下: UPDATE course SET credit=4 WHERE cname='数据结构'; 2.修改全部记录 修改全部记录可不指定WHERE子句。 【例4.12】 在student表中,将所有学生的学分增加2分。 代码如下: UPDATE student SET tc=tc+2; 4.6.3 使用PL/SQL语句删除记录 在数据库中删除记录,可以使用DELETE语句或TRANCATE语句。 1.使用DELETE语句删除记录 在进行删除操作时,DELETE语句用于删除表中的一行或多行记录。 语法格式: DELETE FROM <表名> [WHERE <条件表达式>] 该语句的功能为从指定的表中删除满足WHERE子句的条件行,若省略WHERE子 句,则删除所有行。 注意:DELETE语句删除的是一行或多行。如果删除所有行,表结构仍然存在,即存 在一个空表。 【例4.13】 在student1表中,删除学号为224004的行。 代码如下: DELETE FROM student1 WHERE sid='224004'; 【例4.14】 在student1表中,删除全部记录。 代码如下: DELETE FROM student1; 2.使用TRUNCATE语句删除全部记录 当需要删除一个表里的全部记录时,使用TRUNCATETABLE语句,它可以释放表的