文档介绍:第四章 SQL和PL/SQL
SQL
PL/SQL
DDL数据定义语言:包括一些支持定义或建立数据库对象(如表、索引、序列或视图)的语句。Create、alter、drop
DML数据操纵语言:包括允许对数据库进行处理或操纵的语句。Select、insert、delete、update
创建表
格式:
create table 表名
(列名1 数据类型【约束】,
列名2 数据类型【约束】,
列名3 数据类型【约束】
);
数据类型
varchar2(size) 存放可变长字符数据
char(size) 存放定长字符数据
number(l,d) 存放数值型数据,l代表总位数,d代表小数点后的位数
blob 二进制大对象
raw(size) 纯二进制数据
date 存放日期
long 存放可变长字符数据
Number
number :允许在小数点左边或右边输入任何个数的数字
Number(5) : 允许在小数点左边不多于5位数,如果任何数字被插入到小数点的右边,该数字将被4舍5入。
Number(5,2) :允许总数不超过5位数,其中2位在小数点右边,3位在左边。
约束
null/not null
primary key 要求进入该列的值是惟一的,且不为null
foreign key
unique 防止重复值进入该列,但允许为null
check 限制属性列的输入值
命名约束与未命名约束
在建立或修改表时,用户可明确给出约束的名称。否则约束名将由RDBMS内部命名。由用户命名的约束称为命名约束;RDBMS命名的约束由开发商决定,称未命名约束。
命名约束的格式:constraint 约束名
约束命名规定:表名-列名-后缀
例1:用以下属性及设定建立表calling-card.
属性:pany-name、卡号card-number、初值starting-value、余额value-left、初始密码pin-number。
设定:pany-name可具有多达25个字符,属性value-left及starting-value用元及分来度量。属性card-number属性定义为主码;将pin-number属性定义为惟一码。
请用命名约束来书写create table。
Create table calling-card
(company-name varchar2(25),
card-number varchar2(20) constraint
calling-card-card-number-pk primary key,
starting-value number(5,2),
value-left number(5,2),
pin-number char(12) constraint
calling-card-pin-number-u unique
);
当一个表建立后,可能需要确定表的名称、数据类型及组成表的属性的一些约束。
使用:describe 表名;
或 desc 表名;
如:desc calling-card;