不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2020-12-12 23:14  分类:MySQL/NoSQL  编辑

如果更新多个值的话,只需要稍加修改:

UPDATE categories 
    SET orderId = CASE id 
        WHEN 1 THEN 3 
        WHEN 2 THEN 4 
        WHEN 3 THEN 5 
    END, 
    title = CASE id 
        WHEN 1 THEN 'New Title 1'
        WHEN 2 THEN 'New Title 2'
        WHEN 3 THEN 'New Title 3'
    END
WHERE id IN (1,2,3)
作者:php-note.com  发布于:2020-12-12 22:35  分类:MySQL/NoSQL  编辑

insert into values 或 insert into select批量插入时,都满足事务的原子性与一致性,一条出错整体都会回滚。在使用insert into select时,MySQL会对select的数据加S(读)锁,在事务较为复杂的场景下可能有死锁的风险。

作者:php-note.com  发布于:2020-12-08 10:04  分类:MySQL/NoSQL  编辑

MySQL莫名地报错:

2020-12-08T02:02:32.179362Z 0 [ERROR] InnoDB: The innodb_system data file 'ibdata1' must be writable
作者:php-note.com  发布于:2020-11-13 10:50  分类:MySQL/NoSQL  编辑

今天在把一个数据库的数据导出SQL,然后在另外一个库中执行的时候出现了这个问题,报错:

Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.

作者:php-note.com  发布于:2020-09-12 10:05  分类:MySQL/NoSQL  编辑

经常使用DECIMAL数据类型的货币数据,如价格,工资,账户余额等。如果要设计一个处理货币数据的数据库,则可参考以下语法:

amount DECIMAL(19,2);
作者:php-note.com  发布于:2020-08-26 14:07  分类:MySQL/NoSQL  编辑

1.轻量配置、2.均衡配置、3.高端配置、4.极限配置

作者:php-note.com  发布于:2020-07-31 14:26  分类:MySQL/NoSQL  编辑

utf8与utf8mb4(utf8 most bytes 4)

  • MySQL 5.5.3 之后增加了utfmb4字符编码
  • 支持BMP(Basic Multilingual Plane,基本多文种平面)和补充字符
  • 最多使用四个字节存储字符
作者:php-note.com  发布于:2020-07-30 23:40  分类:MySQL/NoSQL  编辑

在MySQL的存储过程中经常会看到这句话:DECLARE CONTINUE HANDLER FOR NOT FOUND

它的含义是:若没有数据返回,程序继续,并将变量 IS_FOUND 设为 0 ,这种情况是出现在类似:select XX into XXX from tablename 的时候发生的。

作者:php-note.com  发布于:2020-07-30 11:24  分类:MySQL/NoSQL  编辑

MySQL四舍五入函数:

  • round(x) 函数:返回最接近于参数 x 的整数;
  • round(x, y) 函数:对参数x进行四舍五入的操作,返回值保留小数点后面指定的y位。
作者:php-note.com  发布于:2020-07-30 11:09  分类:MySQL/NoSQL  编辑

在MySQL中进行模糊查询的时候可以使用 instr() 函数。

instr()函数介绍

instr(s, s1),这个函数返回字符串s1在字符串s中的位置,若是找不到则返回0,找到则返回字符串s1所在位置。(返回位置从1开始)

instr()函数使用

SELECT * FROM user WHERE INSTR(username,'2')>0