![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
IMJCW
小孩子的心思像星空,看得见却看不懂。
展开
-
MySQL事务嵌套
前言MySQL 在开始某个事务的时候,会隐式提交上一个事务。所以 MySQL 本身是不支持事务嵌套的。但 MySQL 也给我们提供了一个 SAVEPOINT 来做出类似事务嵌套的动作,我们将运用 SAVEPOINT 来帮助我们实现事务嵌套。MySQL示例准备一张表,用于测试。CREATE TABLE `demo_transaction` ( `id` int(11) NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=u原创 2021-04-12 17:09:35 · 2347 阅读 · 0 评论 -
INSERT INTO vs REPLACE INTO vs INSERT IGNORE INTO
前言在看某块功能的代码的时候,看到了比较有意思的 SQL 语句,如下:INSERT IGNORE INTO ...INSERT INTO用的最多的插入语句了,直接插入一条数据,如果主键冲突,会报错。REPLACE INTO替换数据,SQL 语句中必须存在主键或者唯一键,如果存在,则更新,否则插入。单个 INSERT INTO 语句插入多个值时,InnoDB 表中,会认为这是单个事务,要么都成功,要么都失败。如果用了 INSERT IGNORE INTO 语句插入多个值时,InnoDB 表中原创 2021-03-16 14:59:29 · 205 阅读 · 0 评论 -
DECIAML字段字节计算
前言最近在看《深入浅出MySQL》一书,看到了数值类型那一节。里面介绍了一些常用字段的相关信息,如字节长度、最大值、最小值等。当看到 DECIMAL 字段时,它的字节数是 M+2,这个让我很不解,是为什么?查阅+理解DECIAML 与 FLOAT 和 DOUBLE 的存储方式不同。FLOAT 和 DOUBLE 是用二进制存储数据的,所以会有部分精度问题。DECIAML ...原创 2018-03-07 16:10:45 · 779 阅读 · 0 评论