jdbc、索引

     一、jdbc

           1、驱动  jar包  

                 java database connector

                 a、加载驱动。拥有能够链接数据库的能力  :

                         Class.forName("com.mysql.jdbc.Driver")

                 b、创建链接。获得数据库的链接  :

                         Connection coon=DriverManager.getConnection

                                              ("jdbc:mysql://localhost:3306/subway","root","root");

                通过链接发送Sql,获得语句对象  :

                         Statement stmt =coon.createStatement();

                执行sql  查询会返回结果集 :

                         ResultSet rs=stmt.executeQuery(sql语句);  //  返回结果

                         int i=stmt.executeUpdate(sql); while( i>0)   //  大于0运行成功
        while(rs.next()) {
            emp e=new emp();
            e.setEid(rs.getInt(1));
            e.setEname(rs.getString(2));
            list.add(e);
        }
        rs.close();
        stmt.close();
        coon.close();

     二、sql注入 (第一代漏洞)

            预编译语句对象  prepareStatement(sql);

             PrepareStatement  ps=coon. prepareStatement(sql);

             ps.setString(1," ");

            优点:编译一次,可以执行多次,效率快,安全

                       参数用户可控,可读性高,预编译空间有限

     三、

      1、dao、

            data access object

            数据访问对象

            dao 层 数据库交互,定位错误

      2、view   视图层 

      3、service  逻辑层

      4、model entiy 实体类

      5、tools  工具层

四、数据库索引、(index)

    索引有哪些优缺点?
    索引的优点

  • 可以大大加快数据的检索速度,这也是创建索引的最主要的原因。
  • 通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。

    索引的缺点

  • 时间方面:创建索引和维护索引要耗费时间,具体地,当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,会降低增/改/删的执行效率;
  • 空间方面:索引需要占物理空间。

    索引的基本数据类型

  • 普通索引 INDEX : 基本的索引类型,没有唯一性的限制,允许为NULL值。

可以通过ALTER TABLE table_name ADD INDEX index_name (column);创建普通索引

可以通过ALTER TABLE table_name ADD INDEX index_name(column1, column2, column3);创建组合索引

  • 主键索引 PRIMARY KEY : 数据列不允许重复,不允许为NULL,一个表只能有一个主键。
  • 唯一索引 UNIQUE : 数据列不允许重复,允许为NULL值,一个表允许多个列创建唯一索引。

可以通过 ALTER TABLE table_name ADD UNIQUE (column); 创建唯一索引

可以通过 ALTER TABLE table_name ADD UNIQUE (column1,column2); 创建唯一组合索引

  • 全文索引 FULLTEXT : 是目前搜索引擎使用的一种关键技术。

   索引的数据结构(b树,hash)
        索引的数据结构和具体存储引擎的实现有关,在MySQL中使用较多的索引有Hash索引,B+树索引等,而我们经常使用的InnoDB存储引擎的默认索引实现为:B+树索引。对于哈希索引来说,底层的数据结构就是哈希表,因此在绝大多数需求为单条记录查询的时候,可以选择哈希索引,查询性能最快;其余大部分场景,建议选择BTree索引。
 

               where后面多次出现的字段加索引,通常主键加索引

               表删除,索引不再起作用

五、视图、(view)、

    视图的作用:

          1、保证了安全性,对不同的用户设定不同的视图,限制用户的访问权限,起到保密作用

          2、简化操作,把经常使用的数据设定视图

          3、 操纵视图数据改变基表本身,操纵视图字段不会改变基表

    视图的创建:

          create

              view '数据库' . '视图'

              as

           (select  字段  from  表);

         

     虚表(伪表):dual 系统提供或不在表的字段里

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值