JAVAWEB学习

1.Mysql数据库学习笔记

.frm是指表文件

.MYD是指数据文件

两个文件组合形成二维表

SQL语句可以多行或者单行书写,以分号结尾。

单行注释:-- 需要加空格  否则会报错  #号注释(mysql特有)

1.1SQL分类

  1. DDL:数据定义语言,用来定义数据库对象:数据库,表,列等
  2. DML:数据库操作语言,用来对数据库中表的数据进行增删改
  3. DQL:数据库查询语言,用来查询数据库中表的记录(数据)
  4. DCL:数据库控制语言,用来定义数据库中的访问权限和安全级别及创建用户

查看当前使用数据库:select  database()。

查询书数据库中有无表:show  tables

查看表的结构:desc  func

SQL数据类型图

实例:score double(总长度,小数点后保留的位数)0-100.2  score double(5.2)最大三位数加小数两位等于5

  1. 1.2修改表

  2. 修改表名ALTER table   表名  rename  to  新的表名
  3. 添加一列 ALTER  table  表名ADD  列名  数据类型
  4. 修改数据类型  ALTER  table  表名  modify 列名  新数据类型
  5. 修改列名和数据类型ALTER table  表名  change 列名  新列名  新数据类型
  6. 删除列  ALTER  table  表名  drop  列名
  7. 聚合函数中null的值不参与运算   

1.3分组查询

  1. 查询男女同学各自的平均分
    select  sex,avg(math)  from   stu  group  by  sex;//性别分组

             注意:分组之后,查询的字段为聚合函数和分组字段,查询其他字段无任何意义

     2.where和having 区别:

          执行时机不一样: where是分组之前进行限定,不满足where条件,则不参与分组,而having是分组之后对结果进行过滤。。可判断的条件不一样: where不能对聚合函数进行判断,having可以。
        执行顺序: where >聚合函数> having

1.4分页查询

        分页查询语法

select  字段列表 from  表名  limit  起始索引 ,查询条目数  ;

起始索引:从0开始

计算公式:起始索引=(当前页码-1)*每页显示的条数

tips:

  1. 分页查询limit是MySQL数据库的方言
  2. Oracle分页查询使用rownumber
  3. SQL Server分页查询使用top

 2.1事务

        数据库的事务:是一种机制,一个操作序列,包含了一组数据库操作命令。

        事物把所有的命令作为一个整体一起向系统提交或撤销操作请求,即这一组数据库命令要么同时成功,要么同时失败。

        事物是一个不可分割的工作逻辑单元。

 事务的四大特征

  1. 原子性(Atomicity):事务是不可分割的最小操作单位,要么同时成功,要么同时失败
  2. 一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果相一致。
  3. 隔离性(Isolation):事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的。

  4. 持久性(Durability):对于任意已提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障

3.JDBC

        jdbc:Java数据库连接(Java Database connect),它是一套用于执行SQL语句的Java API。应用程序可通过这套API连接到关系数据库,并使用SQL语句来完成对数据库中数据的查询、更新和删除等操作。

3.1JDBCAPI

        1.DriverManger(驱动管理类)作用:1.注册驱动        2.获取数据库连接

是一个工具类,里面全是静态方法,类型加点调用方法。

         url:固定句式(jbdc:mysql//ip地址(域名):端口号)/数据库名称&参数键值对1&参数键值对2....

细节

        

 2.Connection(数据库连接对象)作用:1.获取执行SQL对象        2.管理事务

3.Statement作用:执行SQL语句

4.ResultSet(结果集对象)作用:1.封装了DQL查询语句的结果(一张表加一个箭头(游标:会默认指在数据的上一行))

 

5.PrepareStatement(继承自Statement)作用:1.预编译SQL语句并执行:预防SQL注入问题。

SQL注入:SQL注入是通过操作输入来修改事先定义好的SQL语句,用以达到执行代码对服务器进行攻击的方法。

        使用方法:

 图中sql查询语句中?是占位符,需要设置对应的值。

6.PrepareStatement原理

预编译默认关闭,需要输入上方绿色代码进行开启!

7.数据库连接池

 

 

 快捷键:alt+鼠标左键;整列编辑

在实体类中,基本数据类型建议使用其对应的包装类型
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值