oracle笔记

一、             逻辑备份:

1) 导出(备份)export

1、 导出当前用户下的表

exp 用户名/密码 tables=(表1,……表n) file=路径+文件名.dmp

如:

exp scott/tiger tables=(emp) file=c:\1.dmp

2、 导出其他用户下的表:(administrator)

exp 管理员/密码 tables(用户.表1,……用户.表n) file=路径+文件名.dmp

如:

exp system/manager tables=(scott.emp) file=c:\1.dmp

3、 导出当前用户的方案:

exp 用户名/密码 file=路径+文件名.dmp

如:

exp scott/tiger file=c:\1.dmp

4、 导出其他用户的方案:(administrator)

exp 管理员/密码 owner=用户名 file=路径+文件名.dmp

如:

exp system/manager owner=scott file=c:\1.dmp


    2) 导入(还原)import

1、 导入表到当前入户下:

imp 用户名/密码 tables=(表1,……表n) file=路径+文件名.dmp

如:

imp scott/tiger tables=(emp) file=c:\1.dmp

2、 导入表到其他用户下:

imp 管理员/密码 touser=用户名 tables=(表1,……表n) file=路径+文件名.dmp

如:

imp system/manager touser=scott tables(emp) file=c:\1.dmp

3、 导入方案到当前用户下:

imp 用户名/密码 file=路径+文件名.dmp

如:

imp scott/tiger file=c:\1.dmp

4、 导入方案到其他用户下:(administrator)

imp 管理员/密码 file=路径+文件名.dmp fromuser=用户1 touser=用户2

如:

imp system/manager file=c:\1.dmp fromuser=scott touser=tiger

二、             表空间的使用:

1、 建立用户表空间:

create tablespace 表空间名 datafile

‘路径+文件1.dbf’ size 大小MB,

‘路径+文件n.dbf’ size 大小MB,

2、 建立临时表空间:

create temporary tablespace 表空间名 temfile

‘路径+文件1.dbf’ size 大小MB,

‘路径+文件n.dbf’ size 大小MB,

建表时没有指定表空间,使用用户的默认表空间。建表时主键和唯一约束会产生索引,没有指定时同样也适用用户默认的空间

建表时不要使用系统表空间,会使Oracle系统性能下降

3、 索引表空间:

命令与建用户表空间相同,以名称区别

              注:Oracle可以将不同对象分别存在不同的表空间中,提高系统性能

4、 建立表时指定表空间:

create table 表名



        字段1 类型 [primary key using index tablespace 索引表空间名]

        ……

        字段n 类型 [约束]



tablespace 用户表空间

5、 建索引命令:

create index 索引名 on 表 (字段) [tablespace 索引表空间名]

注:表空间大小就是表空间中数据文件的大小之和

6、 修改表空间:

1) 修改现有的数据文件/临时文件大小

alter database datafile/tempfile ‘路径+文件名.dbf’ resize 大小MB

2) 给现有的表空间增加数据文件/临时文件

alter tablespace 表空间名 datafile/tempfile ‘路径+文件名.dbf’ size 大小MB

7、 删除表空间:

drop tablespace 表空间名

drop tablespace 表空间名 including contents and datafiles


三、             序列:

Oracle中的序列是一个独立的对象,可以产生连续并唯一的编号,相当于SQLServer中的identity

1、 建立序列:

create sequence 序列名

[

        increment by 值                  增量

        start with 值                    初值

        minvalue 值                      最小值

        maxvalue 值                      最大值

        cycle/nocyle                     是否循环

        cache 值/nocache                 是否放入缓存区

]

2、 序列中的两个伪列:

1)序列.nextval   取序列的下一个值

2)序列.currval    取序列当前值,在这之前必须使用一次nextval

       3、向表中写入序列:

                     insert into emp values (seq1.nextval,’a’)

4、修改序列:

alter sequence 序列名

[

        increment by 值

        minvalue 值

        maxvalue 值

    cycle/nocyle

    cache 值/nocache

]

注:修改序列时,不可修改初值

5、 删除序列:

drop sqquence 序列名


四、             视图:

是一个虚拟表,只存放select语句,真正的数据来源于表

1、 建立视图:

create or replace view 视图名

as

select 语句

[with check option]

       ·create or replace    创建和修改

       ·with check option    检查数据是否符合视图要求

      

1) 视图中的数据与表的数据一一对应,视图可以改,表也可以改,当select语句中只存在一个表时可修改

2) 使用视图时不要使用update,尽量全使用查询

2、 优点:

1) 可重复利用

2) 安全

3) 提高效率

3、 删除视图:

drop view 视图名

你可能感兴趣的:(oracle,C++,c,cache,C#)