MySQL第二天0317 数据插入,修改,删除~~事务~~简单查询

  • 数据操作语言 Data Manipulation Language,简称DML,主要用来操作数据表中的数据。
    • 常见操作:
      • 增加行数据:INSERT
      • 修改行数据:UPDATE
      • 删除行数据:DELETE
  • 插入数据
    • 语法
      • INSERT INTO 表名[(字段列表)] VALUES
      • (值列表1),
      • (值列表2),
      • (值列表n);
      • INSERT INTO 表名[(列名1[,列名2,…,列名n])] 子查询;  --注意不写values关键字
    • 插入空值的2种方法:
      • 1、隐含法:在列名列表中忽略该列
      • 2、显示法:在值列表中指定NULL关键字或者 ' '
    • 插入日期值 sysdate() 记录当前日期和时间
  • 修改数据
    • 语法
      • update table
      • set 列名=值,列名=值···
      • where 条件;
  • 删除数据
    • 语法
      • DELETE FROM table
      • [WHERE condition];
    • 截断表:TRUNCATE TABLE table;
    • 区别:
      • 1、DELETE是DML,可以删除指定记录,不释放存储空间,使用ROLLBACK可以回滚。
      • 2、TRUNCATE是DDL,只能删除表中所有记录,释放存储空间,使用ROLLBACK不可以回滚。
  • 事务 DQL DML + DDL or DCL
    • 概念:数据库的一个执行逻辑单元,或数据库执行的一组sql,执行要么全部成功,要么全部失败,通过事务保证数据的一致性。
    • 事务特性:ACID
      • Atomicity, 原子性。事务就像原子一样不可分割,DML语句要么全成功,要么全失败。
      • Consistency,一致性。一旦事务完成,不论成败,整个系统处于数据一致的状态。
      • Isolation, 隔离性。一个事务的执行不会被另一个事务干扰。
      • Durability, 持久性。事务一旦提交,对数据的修改就是永久的,不可回滚。
    • 查看MySQL的事务自动提交模式:SHOW VARIABLES LIKE '%AUTOCOMMIT%';
      • 设置
        • set autocommit = 0 禁止自动提交
        • set autocommit = 1 开启自动提交
    • 事务显示提交:commit
    • 事务显示回滚:rollback (savepoint rollback to)
    • 事务隐式提交:DDL(create、alter、drop、truncate、rename)+DCL(grant、revoke)
    • 事务隐式回滚:客户端强退、客户端连接异常、系统异常
  • 简单查询
    • SQL语言
      • SQL:Structed Query Language 结构化查询语言
        • SQL语句规则:
        • 1、不区分大小写
        • 2、可以写单行也可以写多行
        • 3、关键字不可以缩写、分开、跨行
      • DQL:Data Query Language,select 数据查询语言
      • DML:Data Manipulation Language,insert,delete,update 数据操作语言
      • TPL:Transaction Process Language,commit,callback 事务处理语言
      • DCL:Data Control Language,grant,revoke 数据库控制功能
      • DDL:Data Definition Language,create,drop,alter 数据库模式定义语言
    • 基本select语句 select ··· from table;
    • 任何包含空值的算术表达式运算后的结果都为空值null
      • 使用ifnull(字段名, 值)
    • 列别名
      • 列名 [as] 列别名
      • 列别名两侧加双引号""
        • 1、包含空格
        • 2、区分大小写
        • 3、特殊字符
    • 消除重复行 distinct
      • select distinct ··· from table;
    • 选择限定行
      • select ··· from table where ····;
    • 特殊比较运算符
      • between···and··· 是否范围内
      • in 是否在集合列表中
      • like 部分匹配,也叫模糊查询
        • % 任意个字符
        • _ 单个字符
      • is null 是否为空
    • order by子句
      • select ··· from table where ···
      • order by ······
        • 可以按照······进行排序
          • asc默认升序
          • desc降序
    • 限制行数
      • select ··· from table where ···
      • limit [start,]length;
        • start表示开始行(0开始),length输出的行数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值