• 初识Oracle


    Oracle和MySQL同为数据库区别如下:

      MySQL:免费,安装使用都相对比较简便,适合小型企业使用,属轻级。

      Oracle:收费,相比较MySQL比较复杂,不过数据库服务更完善(权限,并发,事务,一致性);更适合中大型企业使用,属重级。

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

     

    关系型数据库与非关系型数据库区别如下:

      一、关系型数据库

     

      关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织
        优点:
          1、易于维护:都是使用表结构,格式一致;
          2、使用方便:SQL语言通用,可用于复杂查询;
          3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
        缺点:
          1、读写性能比较差,尤其是海量数据的高效率读写;
          2、固定的表结构,灵活度稍欠;
          3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。


      二、非关系型数据库

      非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。
        优点:
          1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
          2、速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘;
          3、高扩展性;
          4、成本低:nosql数据库部署简单,基本都是开源软件。

        缺点:
          1、不提供sql支持,学习和使用成本较高;
          2、无事务处理;
          3、数据结构相对复杂,复杂查询方面稍欠。

      非关系型数据库的优势:

        1.性能:NOSQL是基于键值对的,可以想象成表中的主键和值的对应关系,而且不需要经过SQL层的解析,所以性能非常高。

        2.可扩展性:同样也是因为基于键值对,数据之间没有耦合性,所以非常容易水平扩展。

      关系型数据库的优势:

        1.复杂查询:可以用SQL语句方便的在一个表以及多个表之间做非常复杂的数据查询。

        2.事务支持:使得对于安全性能很高的数据访问要求得以实现。

    对于这两类数据库,对方的优势就是自己的弱势,反之亦然。

    非关系型数据库的分类和比较:
        1、文档型
        2、key-value型
        3、列式数据库
        4、图形数据库

     

     

     

     

    连接方式:

      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和HR需要登录SYSTEM解锁权限设置密码

      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数据

    ———————————————————分割线———————————————————

    2020-02-21PM

    alter使用:

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

        alter table tableName add columnName dataType;

        alter table tb_shop add memo varchar2(100);

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

        alter table tableName modify columnName dataType;

        alter table tb_shop modify memo varchar2(50);

      删除表中指定的列

        alter table tableName drop column columnName;

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

      (1)数据定义语言(Data DefinitionLanguaeDDL):用于创建、修改和删除数据库对象,如CREATE TABLEALTER TABLEDROP TABLE等。

      (2)数据操纵语句Data Manipulation LanguageDML:用于操纵数据包括INSERTUPDATEDELETESELECT等。

      (3)数据控制语言(Data Control LanguageDCL):用于执行授予权限和撤销权限的操作,包括GRANT(授予权限)、REVOKE(撤销权限)两条命令。DCL语句可以自动提交事务。

      (4)事务控制语言(Transactional Control LanguageTCL):用于维护数据的一致性,包括COMMIT(提交事务)、ROLLBACK(回滚事务)和SAVEPOINT(设置保存点)3语句。

    哑表dual

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

      select sysdate from dual;

      select sys_guid() from dual;

    序列

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

      create sequence seq_name start with 1;

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

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

    分页SQL

      使用RowNum实现排序功能

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

      select rownum rn,t.* from tableName;

      示例:select * from (

               select rownum rn,t.* from emp t

      )where rn<10 and rn>5

    ———————————————————分割线———————————————————

    1. JDBC的含义

    JDBC就是Java中连接数据库的一个桥梁

    JDBC: java database connectivity的简称是SUN公司提供的一套操作数据库的标准规范,各大数据库厂商按此规范(接口)来实现操作数据库的驱动。JDBC和数据库驱动之间的关系是接口和实现类的关系。

    JDBC技术就是使用java代码(程序)发送sql语句的技术

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

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

    2. Eclipse连接Oracle服务端

    1.选择 Window – show view – Data Source Explorer

    2.新建数据连接,选择Oracle模板

    3.选择对应Oracle版本 添加本地jar包

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

    5. 打开Open SQL Scrapbook,测试真实SQL语句.

    3. JDBC编程

    1. 创建java项目

    2. 导入参数文件 .properties(注意用户名和密码是否正确)

    3. 导入JDBC工具类

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

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

    //准备sql

    //预装载sql

    //执行sql

    //收集返回参数(结果集或受影响行数)

    //关闭对应流

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

           对应 ps.executeQuery()查询需要返回结果集

    增、删、 对应 ps.executeUpdate()增删改需要返回受影响行数

  • 相关阅读:
    elform 校验
    深入理解ES6系列
    【数据结构&算法】10串基础&KMP算法源码
    【数据结构&算法】13赫夫曼树&赫夫曼编码
    【RTOS】FreeRTOS中的任务堆栈溢出检测机制
    【数据结构&算法】11树基础&二叉树遍历
    【环境】解决linux与windows之间的复制粘贴
    【数据结构&算法】09队列概念&参考源码
    【网络基础】内网IP与外网IP
    【数据结构&算法】12线索二叉树
  • 原文地址:https://www.cnblogs.com/ZXDZXD/p/12335339.html
Copyright © 2020-2023  润新知