MySQL 使用

MySQL 数据库编码 转换

修改表编码格式的同时修改表字段编码

ALTER TABLE `table-name` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

只修改表的字符集

ALTER TABLE `table-name` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

default 只修改表的字符集, CONVERT TO即修改表又修改字段的字符集

修改数据库编码格式

ALTER DATABASE `database-name` CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;

批量修改数据表编码 [CONVERT TO 或者 default]

SELECT 
CONCAT("ALTER TABLE `", TABLE_NAME,"` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;") 
AS target_tables
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA="database-name"
AND TABLE_TYPE="BASE TABLE"

MySQL 日期格式化

DATE_FORMAT(NOW(), "%Y-%m-%d %H:%i:%s")
-- 2020-10-13 10:16:34

MySQL 其他

-- 间隔函数
-- task_date 列类型为dateTime 
 select * from stv_tasks as t1  WHERE t1.task_date >= '2020-08-01' AND t1.task_date <  '2020-08-01' + INTERVAL 1 MONTH
-- tinyint(1)
mysql中没有Boolean,所以它用tinyint(1)代替Boolean。如果想用tinyint的本类型,建议tinyint(n), n>=2。
posted @ 2020-10-10 14:24  那年长安  阅读(183)  评论(0编辑  收藏  举报