欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

初步体验Oracle

程序员文章站 2022-03-03 10:47:53
Oracle 与Mysql 对比: MySQL: 免费;小型企业;仅是数据库;轻 Oracle:收费, 中大型企业;数据库服务(权限,并发,事务,一致性);更适合集群;重 共同点:都属于关系型数据库 RDBMS 非关系型数据库NoSQL(Not Only SQL ): Redis,Mongodb,S ......

oracle 与mysql 对比:

mysql: 免费;小型企业;仅是数据库;轻

oracle:收费, 中大型企业;数据库服务(权限,并发,事务,一致性);更适合集群;重

共同点:都属于关系型数据库 rdbms

 

非关系型数据库nosql(not only sql ):

redis,mongodb,ssdb,hbase

redis  基于内存存储,key-value数据库,使用比率较高

ssdb  基于硬盘(内存辅助),企图替代redis

mongodb  基于分布式文档存储,集群部署

hbase 基于hdfs存储,是大数据hadoop的子项目,列存储

 

两种连接方式:

         1. 在cmd命令行输入sqlplus

2.  plsql/developer连接,操控数据的工具,官方推荐

 

 

oracle服务:

oracleservicesid

oracle的核心服务,要启动oracle实例,必须启动该服务

oracleoradb11g_hometnslistener

oracle服务器的监听程序  

oraclejobschedulersid

任务调度服务,负责对用户创建的作业按预先设置的时间周期性地进行调度执行,从而实现oracle服务器的自动管理功能

oracledbconsolesid

负责在windows平台下启动oracle企业管理器。oracle 11g企业管理器是一个功能完善的oracle数据库管理工具,可以管理本地数据库环境和网格环境

 

 

 

默认账户:

sys           系统账户,oracle中的超级用户,主要用于维护系统信息和管理实例,数据库中数据字典的所有表和视图都存储在sys模式中

system   用户是oracle中默认的管理员,它拥有dba权限。该用户拥有oracle管理工具使用的内部表和视图,通常通过system用户管理oracle数据库的用户、权限和存储等

scott      oracle数据库的一个示范账号。scott用户模式包含4张示范表,scott用户的默认口令为scott

hr            用户,类似于scott用户,示例表更多

 

 

常用数据类型:

字符类型

char类型

char表示固定长度字符串,长度不够的用空格补充,最多可以存储2000字节

char类型区分中英文,中文在char中占两个字节,而英文只占一个字节

varchar2类型

varchar2表示可变长度字符串,最多可以存储4000字节,在定义该数据类型时,应该指定其大小。与char类型相比,使用varchar2可以节省磁盘空间

数值类型

number类型可以存储正数、负数、零、定点数和精度为38位的浮点数

number(m,n)。其中,m表示精度,代表数字的总位数;n表示小数点右边数字的位数

日期类型

date类型

用于存储表中的日期和时间数据,取值范围是公元前4712年1月1日至公元9999年12月31日,长度是7,7个字节分别表示年、月、日、时、分和秒

timestamp类型

用于存储日期的年、月、日以及时间的小时、分和秒值。其中,秒值精确到小数点后6位,该数据类型同时包含时区信息

 

大对象类型

clob大字符串对象类型

clob(character large object)数据类型用于存储可变长度的字符数据,最多可存储4gb数据,用于存储varchar2类型不能存储的长文本信息

blob大二进制类型

blob(binary large object)数据类型用于存储较大的二进制对象,如图形、视频剪辑和声音剪辑等,最多可以存储4gb数据

 

测试常规crud:

        初步体验Oracle

初步体验Oracle

alter使用:

n  向已经创建的表中增加一个新列

n  alter table tablename add columnname datatype;

n  alter table tb_shop add memo varchar2(100);

n  修改表中指定列的数据类型和类型长度

n  alter table tablename modify columnname datatype;

n  alter table tb_shop modify memo varchar2(50);

n  删除表中指定的列

n  alter table tablename drop column columnname;

 

sql查询语言主要包括以下4种:

(1)数据定义语言(data definitionlanguae,ddl):用于创建、修改和删除数据库对象,如create table、alter table、drop table等。

(2)数据操纵语句(data manipulation language,dml):用于操纵数据,包括insert、update、delete、select等。

(3)数据控制语言(data control language,dcl):用于执行授予权限和撤销权限的操作,包括grant(授予权限)、revoke(撤销权限)两条命令。dcl语句可以自动提交事务。

(4)事务控制语言(transactional control language,tcl):用于维护数据的一致性,包括commit(提交事务)、rollback(回滚事务)和savepoint(设置保存点)3条语句。

 

哑表dual

单行单列的表,用于特殊数据的查询

select sysdate from dual;

select sys_guid() from dual;

 

序列

n  是一个命名的顺序编号生成器,它能以串行的方式生成一系列顺序整数

create sequence seq_name start with 1;

nextval列返回序列生成的下一个值

currval列返回序列生成的当前值

示例:

 初步体验Oracle

rownum

是一个伪列,它会根据返回的记录生成一个序列化的数字。分页

select rownum rn,t.* from tablename;

 

可以使用rownum列返回查询结果集中前n条记录

分页

 

select * from (

       select rownum rn,t.* from emp t

)where rn<10 and rn>5

 

rowid

rowid就是唯一标志记录物理位置的一个id

 

 

 

jdbc(java database connectivity,java数据库连接)

java和数据交互的通道, jdbc体系结构是用于java应用程序连接数据库的标准方法。

java只需要提供一套统一接口,而数据库厂商提供对应自己厂商的驱动程序,也是就对应到jar包

oracle的jar包对应的 ojdbc6.jar , ojdbc14.jar

 

jdbc参数

n  string driverclass = "oracle.jdbc.driver.oracledriver";

n  string url = "jdbc:oracle:thin:@localhost:1521:orcl";

n  string user = "scott";

n  string password = "123456";

 

eclipse测试连接

1. 选择 window – show view – data source explorer

 初步体验Oracle

2. 新建数据连接

 初步体验Oracle

选择oracle模板

 初步体验Oracle

3. 选择对应oracle版本

 初步体验Oracle

 添加本地jar包

 初步体验Oracle

4. 添加jar包后,回退上一步窗口,补充jdbc连接数据

 初步体验Oracle

测试一下

 初步体验Oracle

5. 打开open sql scrapbook,测试真实sql语句

初步体验Oracle

初步体验Oracle

jdbc编程

1. 创建java项目

2. 导入参数文件 .properties

3. 导入jdbc工具类

4. 调用工具类,测试查。步骤:

         3.1 调用工具类,打开数据库连接

         3.2 准备sql

         3.3   预装载sql

         3.4   执行sql

         3.5 收集返回参数

         3.6   关闭对应流

5. 复制代码到dao层,完成crud操作

         查            对应        ps.executequery(),返回结果集

         修改        对应        ps.executeupdate(),返回受影响行数