对象命名规则
- 必须以字母开头
- 允许使用数字、字母和#_$,不允许空格和*
- 长度最多为30个字符
- 不能使用Oracle的保留字
- 同一用户下的对象不能同名
- 尽量使用约定:如有意义的名字,表名首字母t,视图首字母v
SQL语言数据类型
说明:以lob结尾的都表示大文件
说明:char(n)长度是固定的,varchar2(n)长度是可变的
那么什么是固定的,什么是可变的?
比如:
char(5) 表示最多存放5个字符,不管存放几个字符,都开辟5个字符空间
varchar2(5)表示若只存放3个字符,那么就只开辟3个字符空间
对于长度固定的使用char类型是比较合适的,查找和存取的效率快(时间效率高),varchar2的空间效率比较快
说明:
number(m,n),m表示数字总位数,n表示数字的小数位数
那么整数位数=m-n
number(m),(m)是可以省略的,长度是38位
默认 Dec、Decimal与number、numberic相同
timestamp表示时间戳
最常用的也就前两个 varchar2 和 number
创建表
模板——create table 表名(字段属性)
create table book(bid number(4),bname varchar2(20));
(通过 desc book,可以查看刚创建完的book表结构)
修改表
(1)添加列
Alter table 表名 add 列名 列类型 default 值,……
default 值 相当于添加列之后设置一个默认值,此处可以选择省略
alter table book add author varchar2(20);
增加了author列
(2)修改列名
Alter table 表名 rename column 旧列名 to 新列名
alter table book rename column author to zuozhe;
修改字段名(重命名),此处将author列名修改为zuozhe
修改表名:
rename A to B;
表示将表名A修改为表名B
(3)修改列的数据类型、宽度
alter table book modify bid char(5);
不建议修改数据类型以及宽度,最好就是一开始就设置好,上面是命令,但是不推荐使用。
(4)删除列
Alter table 表名 drop column 列名
alter table book drop column zuozhe;
插入删除更新内容
先创建一个表:
create table a(aid number(3),aname varchar2(20),birth date, score number);
说明:date这个类型是没有长度的
插入:insert into a(aid,aname) values(101,‘aaa’);
插入一部分内容
insert into a values(102,‘bbb’,‘12-9月-2000’,95.5);
插入全部的内容,注意一下,日期date这个地方的格式,必须要加中文,这是oracle默认的方式。
删除:delete from a;
删除表中所有的数据
delete from a where aid=101;
条件删除
更新:update a set Sid = 103;
不加条件,所有的记录的aid都会变为103,加条件可以使用where