• 数据库


    数据库 分两大类 关系型数据库 暂时不管 非关系数据库

    DB2
    Oracle 比较重量级 收费的 目前来说 银行金融系统用的比较多
    Mysql 轻量级 开源 可以基于源码进行改造开发 安装容易适合学习和开发

    一、
    mysql:使用图形化客户端 Navicat

    主键约束 代表唯一的一条数据 唯一 非空
    外键约束 可以确保关联表的数据的正确性

    唯一约束
    非空约束 不能为空


    存储引擎:
    innoDB:凡是涉及修改的,使用最常用的引擎innoDB
    MyISAM:不支持事物,只读的数据

    SQL优化:
    索引:查询上千万数据需要考虑优化,是否有索引;索引方法:BTREE
    索引的引导:多列索引,创建联合索引;id,name 。
    若没有id索引的引导,name索引没用效率还是低

    二、Java Database Connection
    实现自动化,就需要用程序来控制数据的自动化,程序需要连接数据库(JDBC驱动)。

    连接池:系统启动后,开辟连接池。使用时就调用,不需要关闭连接池。(DBCP C3P0 durid)

     

    三、查询select from 两个表与left join on的区别

    表a 记录 有 a1 a2
    表b 记录 a1
    from多表,显示 a1
    a left join b
    会显示 a1 a2
    left join 2个表 即使 左边的那个表里有 而右边的表里没有 也显示出来

    在mysql中使用FROM查询多表和使用JOIN连接(LEFT JOIN,RIGHT JOIN除外),查询结果,查询效率是一样的

    如:

    from多表:

    select b.ypmc,b.ypgg,b.ypbzdw,
    c.zbmc,
    d.ypbm,b.xkjywxj
    from GY_YPCDJG a,GY_YPMCGGZD b,yk_zblb c,gy_ypbmk d where a.ypxh=b.ypxh and b.zblb=c.zblb and
    b.flxh= d.xh and b.ypmc like '%红花油%'   

    -----数据为空

    left join 多表
    select a.ypxh, a.ypmc,a.ypgg,a.ypbzdw,b.zbmc, c.ypbm,a.xkjywxj
    from GY_YPMCGGZD a left join yk_zblb b on a.zblb=b.zblb
    left join gy_ypbmk c on a.flxh= c.xh
    where a.ypmc like '%红花油%'

    -----可查出两条数据

    火线速递:山川在我脚下,大地在我怀中;我就是这原野山川之主,我就是这天地万物之灵

  • 相关阅读:
    [ZJOJ] 5772【NOIP2008模拟】今天你AK了吗
    exgcd扩展欧几里得求解的个数
    Dinic当前弧优化 模板及教程
    [Luogu] P3907 圈的异或
    提升——树形DP
    C++ 优先队列
    C++ 洛谷 P2458 [SDOI2006]保安站岗 from_树形DP
    C++ 洛谷 2014 选课 from_树形DP
    C++ luogu1352没有上司的舞会 from_树形DP
    浅说——树形DP
  • 原文地址:https://www.cnblogs.com/huoxiansudi/p/6951527.html
Copyright © 2020-2023  润新知