Rumah > pangkalan data > tutorial mysql > oracle数据库基本语句

oracle数据库基本语句

angryTom
Lepaskan: 2019-10-23 16:54:35
asal
14832 orang telah melayarinya

oracle数据库基本语句

oracle数据库基本语句

一、Oracle数据库操作

1、创建数据库

create database databasename
Salin selepas log masuk

2、删除数据库

drop database dbname
Salin selepas log masuk

3、备份数据库

完全备份

exp demo/demo@orcl buffer=1024 file=d:\back.dmp full=y
Salin selepas log masuk

demo:用户名、密码

buffer: 缓存大小

file: 具体的备份文件地址

full: 是否导出全部文件

ignore: 忽略错误,如果表已经存在,则也是覆盖

将数据库中system用户与sys用户的表导出

exp demo/demo@orcl file=d:\backup\1.dmp owner=(system,sys)
Salin selepas log masuk

导出指定的表

exp demo/demo@orcl file=d:\backup2.dmp tables=(teachers,students)
Salin selepas log masuk

按过滤条件,导出

exp demo/demo@orcl file=d:\back.dmp tables=(table1) query=\" where filed1 like 'fg%'\"
Salin selepas log masuk

导出时可以进行压缩;命令后面 加上 compress=y ;如果需要日志,后面: log=d:\log.txt

备份远程服务器的数据库

exp 用户名/密码@远程的IP:端口/实例 file=存放的位置:\文件名称.dmp full=y
Salin selepas log masuk

4、数据库还原

打开cmd直接执行如下命令,不用再登陆sqlplus。

完整还原

imp demo/demo@orcl file=d:\back.dmp full=y ignore=y log=D:\implog.txt
Salin selepas log masuk

指定log很重要,便于分析错误进行补救。

导入指定表

imp demo/demo@orcl file=d:\backup2.dmp tables=(teachers,students)

还原到远程服务器

imp 用户名/密码@远程的IP:端口/实例 file=存放的位置:\文件名称.dmp full=y
Salin selepas log masuk

二、Oracle表操作

1、创建表

create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
Salin selepas log masuk

根据已有的表创建新表:

A:select * into table_new from table_old (使用旧表创建新表)
B:create table tab_new as select col1,col2… from tab_old definition only<仅适用于Oracle>
Salin selepas log masuk

2、删除表

drop table tabname
Salin selepas log masuk

3、重命名表

alter table 表名 rename to 新表名
Salin selepas log masuk

4、增加字段

alter table 表名 add (字段名 字段类型 默认值 是否为空);
例:alter table tablename add (ID int);
Salin selepas log masuk

5、修改字段

alter table 表名 modify (字段名 字段类型 默认值 是否为空);
Salin selepas log masuk

6、重名字段

alter table 表名 rename column 列名 to 新列名 (其中:column是关键字)
Salin selepas log masuk

7、删除字段

说明:

alter table 表名 drop column 字段名;
Salin selepas log masuk

8、添加主键

alter table tabname add primary key(col)
Salin selepas log masuk

9、删除主键

alter table tabname drop primary key(col)
Salin selepas log masuk

10、创建索引

create [unique] index idxname on tabname(col….)
Salin selepas log masuk

11、删除索引

drop index idxname
Salin selepas log masuk

注:索引是不可更改的,想更改必须删除重新建。

12、创建视图

create view viewname as select statement
Salin selepas log masuk

13、删除视图

drop view viewname
Salin selepas log masuk

三、Oracle操作数据

1、数据查询

select <列名> from <表名> [where <查询条件表达试>] [order by <排序的列名>[asc或desc]]
Salin selepas log masuk

2、插入数据

insert into 表名 values(所有列的值);
insert into test values(1,&#39;zhangsan&#39;,20);
insert into 表名(列) values(对应的值);
insert into test(id,name) values(2,&#39;lisi&#39;);
Salin selepas log masuk

3、更新数据

update 表 set 列=新的值 [where 条件] -->更新满足条件的记录
update test set name=&#39;zhangsan2&#39; where name=&#39;zhangsan&#39;
update 表 set 列=新的值 -->更新所有的数据
update test set age =20;
Salin selepas log masuk

4、删除数据

delete from 表名 where 条件 -->删除满足条件的记录
delete from test where id = 1;
delete from test -->删除所有
commit; -->提交数据
rollback; -->回滚数据
delete方式可以恢复删除的数据,但是提交了,就没办法了 delete删除的时候,会记录日志 -->删除会很慢很慢
truncate table 表名
删除所有数据,不会影响表结构,不会记录日志,数据不能恢复 -->删除很快
drop table 表名
删除所有数据,包括表结构一并删除,不会记录日志,数据不能恢复-->删除很快
Salin selepas log masuk

5、数据复制

表数据复制

insert into table1 (select * from table2);
Salin selepas log masuk

复制表结构

create table table1 select * from table2 where 1>1;
Salin selepas log masuk

复制表结构和数据

create table table1 select * from table2;
Salin selepas log masuk

复制指定字段

create table table1 as select id, name from table2 where 1>1;
Salin selepas log masuk

四、数据库复制命令

不同的数据库语法不同(SQL Server和Oracle为例),且复制包括目标表已存在和目标表不存在的情况,分别回答:

SQL Server中,如果目标表存在:

insert into 目标表select*from原表;
Salin selepas log masuk

SQL Server中,,如果目标表不存在:

select*into 目标表from原表;(复制表结构和数据)
select*from 目标表from原表where1=0(只复制表结构)
Salin selepas log masuk

Oracle中,如果目标表存在:

insert into 目标表select*from原表;
commit;
Salin selepas log masuk

Oracle中,如果目标表不存在:

create table 目标表 as select * from 原表 where 1=0(只复制表结构)
create table 目标表 as select * from 原表;复制表结构和数据
Salin selepas log masuk

推荐教程:Oracle教程

Atas ialah kandungan terperinci oracle数据库基本语句. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan