一、SQL语言
SQL语言分为四种,分别是:数据定义语言(DDL)、数据操纵语言(DCL)、事务控制语言(TCL)、数据控制语言(DML)。
1.1数据定义语言(DDL)
建立、修改、删除数据库对象,如数据库、表、视图等。数据定义语言主要包括了CREATE、ALTER、DROP等语句。
1.2数据操纵语言(DCL)
数据库基本操作,如表中数据的查询、插入、删除和修改等。数据操纵语言中功能最强、使用最广,但语法也最复杂的语句是SELECT语句,其次还有INSERT、UPDATE、DELETE等语句。
1.3事务控制语言(TCL)
事务操作,如COMMIT、SAVEPOINT、ROLLBACK等语句。
1.4数据控制语言(DML)
设置用户对数据库对象的访问权限,主要包括GRANT、REVOKE、DENY等语句。
二、Oracle基本数据类型
2.1 CHAR(n)
该数据类型用于定义固定长度的字符串,其中n用于指定字符串的最大长度,n必须是正整数且不超过32767。
2.2 VARCHAR2(n)
该数据类型用于定义可变长度的字符串,其中n用于指定字符串的最大长度,n必须是正整数且不超过32767。
2.3 NUMBER(precision,scale)
该数据类型用于定义固定长度的整数和浮点数,其中precision表示精度,用于指定数字的总位数;scale表示标度,用于指定小数点后的数字位数,默认值为0,即没有小数位数。
2.4 DATE
该数据类型用于定义日期时间类型的数据,其数据长度为固定7个字节,分别描述年、月、日、时、分、秒。
2.5 TIMESTAMP
该数据类型也用于定义日期时间数据,但与DATE仅显示日期不同,TIMESTAMP类型数据还可以显示时间和上下午标记,如“11-9月-2007 11:09:32.213 AM”。
2.6 BOOLEAN
该数据类型用于定义布尔型(逻辑型)变量,其值只能为TRUE(真)、FALSE(假)或NULL(空)。需要注意的是,该数据类型是PL/SQL数据类型,不能应用于表列。
三、SQL语言的运算符
①算术 +、-、*、/、正、负。
②字符 ||(用于连接两个字符串),例:'jack is'||'a boy'等操作。
③比较> 、< 、=、 != (或)<>、 <=、 >=、in、between…and、like
④逻辑not(逻辑非)、and(与)、or(或)。
⑤集合union(并)、intersect(交)、minus(差)。
四、创建表空间和表
创建一个students_test数据表,然后将其放置在自定义的tbs_test表空间里。
(1)创建tbs_test数据表空间的代码如下:
SQL>create tablespace tbs_test datafile 'D:\OracleFiles\OracleData\datafile_test. dbf'
size 100m
extent management local autoallocate
segment space management auto;
(2)创建一个students_test数据表,并将该表置于tbs_test数据表空间中,代码如下:
SQL>create table students_test(
stuno number(10) not null, --学号
stuname varchar2(8), --姓名
sex char(2), --性别
age int
)tablespace tbs_test;
五、SQL*PLUS命令
5.1 使用SAVE命令将缓冲区内容保存到文件
使用SAVE命令可以将当前缓冲区的内容保存到文件中,这样,即使缓
冲区中的内容被覆盖,也保留有前面的执行语句。SAVE命令的语法如下:
SAV[E] [ FILE ] file_name [ CRE[ATE] | REP[LACE] | APP[END] ]
语法说明如下:
①file_name表示将SQL*Plus缓冲区的内容保存到由file_name指定的文件中。
②CREATE表示创建一个file_name文件,并将缓冲区中的内容保存到该文件。该选项为默认值。
③APPEND如果file_name文件已经存在,则将缓冲区中的内容,追加到④file_name文件的内容之后;如果该文件不存在,则创建该文件。
⑤REPLACE如果file_name文件已经存在,则覆盖file_name文件的内容;如果该文件不存在,则创建该文件。
5.2 使用GET命令读取文件内容到缓冲区
使用GET命令的语法如下:
GET [ FILE ] file_name [ LIST | NOLIST ]
语法说明如下:
①file_name表示一个指定文件,将该文件的内容读入SQL*Plus缓冲区中。
②LIST列出缓冲区中的语句。
③NOLIST不列出缓冲区中的语句。
5.3 使用COLUMN命令
格式化列的显示效果
COLUMN命令可以对列的显示效果,包括列标题和列数据,进行格式化。该命令的语法如下:
COL[UMN] [ { column_name | ALI[AS] alias } [ options ] ]
语法说明如下:
①column_name指定列名。
②ALIAS alias指定要格式化的列的别名。
③options指定用于格式化列或别名的一个或者多个选项。
5.4 使用LINESIZE命令
设置一行显示的字符数量
使用LINESIZE命令可以设置一行数据可以容纳的字符数量,默认数量为
80。如果LINESIZE的值比较小,那么表中一行数据,有可能在屏幕上需要
分多行显示;如果LINESIZE的值设置大一些,一行数据就可以在屏幕的一
行中进行显示了。
LINESIZE命令的语法如下:
SET LINESIZE n
其中,n表示屏幕上一行数据可以容纳的字符数量,有效范围是1 –
32767。
5.5 使用PAGESIZE命令
设置一页显示多少行数据
使用PAGESIZE命令,可以设置每一页的大小,从而控制每一页显示的
数据量。PAGESIZE命令的语法如下:
SET PAGESIZE n
其中,参数n表示每一页大小的正整数,最大值可以为50,000,默认值
为14。
页并不是仅仅由输出的数据行构成的,而是由SQL*Plus显示到屏幕上的
所有输出结果构成,包括标题和空行等。
举例:使用PAGESIZE和LINESIZE命令
未使用前:
使用后: