1、Oracle中的概念
- 数据库:Oracle数据是数据的物理存储。它包括数据文件ORA或DBF、控制文件、日志文件、联机文件和参数文件。
- 实例:一个Oracle数据库可以有多个实例。链接配置文件tnsnames.ora中配置的SERVICE_NAME的值即数据库实例名。
- 用户:用户建立在实例下,不同实例下可以建立同名用户。
- 表空间:是Oracle数据库上相关数据文件的逻辑映射。一个数据库逻辑上可以被划分为多个表空间。每个数据库至少有一个表空间。
- 数据文件:数据库的物理存储单位。一个表空间由一个或多个数据文件组成,一个数据文件只能属于一个表空间。只能通过删除表空间删除数据文件。
2、创建表空间
1 --创建表空间 2 create tablespace alphajuns 3 datafile 'c:alphajuns.dbf' 4 size 100m 5 autoextend on 6 next 10m;
alphajuns为表空间名,datafile为对应的数据文件,size为定义表空间的初试大小,autoextend表示自动增长,next为一次自动增长的大小
删除表空间:drop tablespace alphajuns;
3、创建用户
1 --创建用户 2 create user alphajuns 3 identified by alphajuns 4 default tablespace alphajuns;
4、给用户授权
1 --给角色授权 2 grant dba to alphajuns;
- connect--连接角色,基本角色
- resource--开发者角色
- dba--超级管理员角色
5、Oracle数据类型
- Varchar,varchar2:字符串。Varchar支持区分NULL和空串,varchar2不区分NULL与空字符串相同。
- NUMBER:NUMBER(n),整数,长度为n;NUMBER(m,n),总长度为m,小数n位。
- DATA:日期类型
- CLOB:大对象,大文本数据类型,可存4G
- BLOB:大对象,二进制数据,可存4G
6、序列
1 --序列,默认从1开始,依次递增 2 --序列不属于任何一张表,但可以逻辑上与表绑定 3 --dual为虚表,只是为了不全语法,实际上没有意义 4 --创建序列 5 create sequence s_person; 6 select * from person; 7 insert into person values(s_person.nextval, '小翠'); 8 commit; 9 select s_person.currval from dual; 10 select s_person.nextval from dual;
7、分页查询
1 --方法一 2 select tt.* from (select rownum rm, t.* from (select * from emp) t where t.rownum < 11) tt where tt.rm > 5; 3 --方法二 4 select * from (select rownum rm, emp.* from emp) e where e.rm > 5 and e.rm < 11;