志在指尖
用双手敲打未来

oracle数据库学习(基本语句)

oracle数据库学习

一、Oracle概念
oracle数据可体系是美国oracle(甲骨文)公司提供的以分布式数据库为核心的一组软件产品,是现在最流行的客户/服务器或B/S体系结构的数据库之一,oracle数据库时现在世界上使用最为广泛的数据库管理体系,作为一个通用的数据库体系,它具有完善的数据库管理功用,是联系型数据库,比mysql更为庞大,在现行的联系型数据库中排名榜首(oracle、mysql、SqlServer),时刻是最为精确的。
二、Oracle的装置
装置教程
三、Oracle数据库的体系结构
1、数据库database
Oracle数据库是数据的物理贮存,这就包括(数据文件ORA或者DBF、操控文件、联机日志、参数文件)。其实Oracle数据库的概念和其他数据库不一样,这儿的数据库时一个操作体系只有一个库,能够看做Oracle就只有一个大数据库。
2、实例
一个数据库能够有n个实例,有一系列的后台进程和内存结构组成。
3、数据文件dbf
是数据库的物理贮存单位,数据库的数据是贮存在表空间中的,真正是在某一个或者多个数据文件中,而一个表空间能够由一个或多个数据文件组成,一个数据文件只能归于一个表空间,一旦数据文件被加入到某个表空间后,就不能删去这个文件,如果要删去某个数据文件,只能删去其所归于的表空间才行。
4、表空间
表空间是Oracle对物理数据库上相关数据文件的逻辑映射,一个数据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构,每个数据库至少有一个表空间(称之为system表空间)
每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件,一个数据文件只能归于一个表空间。
5、用户
用户是在实例下树立的,不同实例中能够建相同名字的用户,表的数据是由用户放入某一个表空间的,而这个表龙剑会随机把这些表数据进行管理和存放的,但是表不是由表空间去查询的,而是由用户去查询。
6、SCOTT和HR用户
是Oracle帮我们建好的测验账户,Scott账户常用,里面有emp、dept表等。
四、Oracle和MYSQL的不同
1、新建项目的方式
MYSQL:创立一个数据库,创立相应的表
2、Oracle是多用户的,MYSQL是多数据库的
3、Oracle安全级别要高,MYSQL开源免费

oracle数据库基本语句

一、Oracle数据库操作
1、创建数据库
createdatabasedatabasename
2、删除数据库
dropdatabasedbname
3、备份数据库
完全备份
expdemo/demo@orclbuffer=1024file=d:back.dmpfull=y
demo:用户名、密码
buffer:缓存大小
file:具体的备份文件地址
full:是否导出全部文件
ignore:忽略错误,如果表已经存在,则也是覆盖
将数据库中system用户与sys用户的表导出
expdemo/demo@orclfile=d:backup1.dmpowner=(system,sys)
导出指定的表
expdemo/demo@orclfile=d:backup2.dmptables=(teachers,students)
按过滤条件,导出
expdemo/demo@orclfile=d:back.dmptables=(table1)query=”wherefiled1like’fg%'”
导出时可以进行压缩;命令后面加上compress=y;如果需要日志,后面:log=d:log.txt
备份远程服务器的数据库
exp用户名/密码@远程的IP:端口/实例file=存放的位置:文件名称.dmpfull=y
4、数据库还原
打开cmd直接执行如下命令,不用再登陆sqlplus。
完整还原
impdemo/demo@orclfile=d:back.dmpfull=yignore=ylog=D:implog.txt
指定log很重要,便于分析错误进行补救。
导入指定表
impdemo/demo@orclfile=d:backup2.dmptables=(teachers,students)
还原到远程服务器
imp用户名/密码@远程的IP:端口/实例file=存放的位置:文件名称.dmpfull=y
二、Oracle表操作
1、创建表
createtabletabname(col1type1[notnull][primarykey],col2type2[notnull],..)
根据已有的表创建新表:
A:select*intotable_newfromtable_old(使用旧表创建新表)
B:createtabletab_newasselectcol1,col2…fromtab_olddefinitiononly<仅适用于Oracle>
2、删除表
droptabletabname
3、重命名表
说明:altertable表名renameto新表名
eg:altertabletablenamerenametonewtablename
4、增加字段
说明:altertable表名add(字段名字段类型默认值是否为空);
例:altertabletablenameadd(IDint);
altertabletablenameadd(IDvarchar2(30)default’空’notnull);
5、修改字段
说明:altertable表名modify(字段名字段类型默认值是否为空);
eg:altertabletablenamemodify(IDnumber(4));
6、重名字段
说明:altertable表名renamecolumn列名to新列名(其中:column是关键字)
eg:altertabletablenamerenamecolumnIDtonewID;
7、删除字段
说明:altertable表名dropcolumn字段名;
eg:altertabletablenamedropcolumnID;
8、添加主键
altertabletabnameaddprimarykey(col)
9、删除主键
altertabletabnamedropprimarykey(col)
10、创建索引
create[unique]indexidxnameontabname(col….)
11、删除索引
dropindexidxname
注:索引是不可更改的,想更改必须删除重新建。
12、创建视图
createviewviewnameasselectstatement
13、删除视图
dropviewviewname
三、Oracle操作数据
1、数据查询
select<列名>from<表名>[where<查询条件表达试>][orderby<排序的列名>[asc或desc]]
2、插入数据
insertinto表名values(所有列的值);
insertintotestvalues(1,’zhangsan’,20);
insertinto表名(列)values(对应的值);
insertintotest(id,name)values(2,’lisi’);
3、更新数据
update表set列=新的值[where条件]–>更新满足条件的记录
updatetestsetname=’zhangsan2’wherename=’zhangsan’
update表set列=新的值–>更新所有的数据
updatetestsetage=20;
4、删除数据
deletefrom表名where条件–>删除满足条件的记录
deletefromtestwhereid=1;
deletefromtest–>删除所有
commit;–>提交数据
rollback;–>回滚数据
delete方式可以恢复删除的数据,但是提交了,就没办法了delete删除的时候,会记录日志–>删除会很慢很慢
truncatetable表名
删除所有数据,不会影响表结构,不会记录日志,数据不能恢复–>删除很快
droptable表名
删除所有数据,包括表结构一并删除,不会记录日志,数据不能恢复–>删除很快
5、数据复制
表数据复制
insertintotable1(select*fromtable2);
复制表结构
createtabletable1select*fromtable2where1>1;
复制表结构和数据
createtabletable1select*fromtable2;
复制指定字段
createtabletable1asselectid,namefromtable2where1>1;

未经允许不得转载:IT技术网站 » oracle数据库学习(基本语句)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载