当前位置: 首页 > news >正文

23. Mysql中的排序规则

文章目录

  • Mysql中的排序规则
    • 1. 数据库默认的排序规则
    • 2. 查看表的排序规则
      • 2.1 查看表排序规则
      • 2.2 查看字段排序规则
    • 3.修改排序规则
      • 3.1 修改库
      • 3.2 修改表
      • 3.3 修改字段

Mysql中的排序规则

1. 数据库默认的排序规则

mysql8的默认排序方式是 utf8mb4_0900_ai_ci
mysql5的默认排序规则是 utf8mb4_general_ci
参考文章https://www.cnblogs.com/seasonhu/p/14994857.html
但是排序规则不具备强制性,如数据库排序规则设置了utf8mb4_0900_ai_ci,表排序规则同样可以设置utf8mb4_general_ci,字段还可以设置utf8mb4_0900_ai_ci

2. 查看表的排序规则

2.1 查看表排序规则

SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, TABLE_COLLATION
FROM INFORMATION_SCHEMA.TABLES
WHERETABLE_SCHEMA = 'product'

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5Tu2okCQ-1690508562014)(https://note.youdao.com/yws/res/24484/WEBRESOURCEc5d195a64a5d70357b5bcd3d27c2c677)]

2.2 查看字段排序规则

SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_TYPE, COLLATION_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERETABLE_SCHEMA = 'product'

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W30iCB6S-1690508562015)(https://note.youdao.com/yws/res/24482/WEBRESOURCEa1b76e38dd03d8478191a648f8b22814)]

3.修改排序规则

3.1 修改库

 ALTER DATABASE product_dscc CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OAZtzMYl-1690508562015)(https://note.youdao.com/yws/res/24464/WEBRESOURCEef9b00d7d17f4ecbbfe0b9bf069c8217)]

3.2 修改表

单个表
ALTER TABLE exc_code_value
DEFAULT CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;通过批量生成执行脚本方式来修改,如
SELECTCONCAT( 'ALTER TABLE ', TABLE_NAME, ' DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;' ) 
FROMinformation_schema.`TABLES` 
WHERETABLE_SCHEMA = 'xxx';

3.3 修改字段

单个字段
ALTER TABLE `exc_warn_notice` MODIFY `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL;通过批量生成执行脚本方式来修改,如
SELECT CONCAT('ALTER TABLE `', table_name, '` MODIFY `', column_name, '` ', DATA_TYPE, '(', CHARACTER_MAXIMUM_LENGTH, ') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci', (CASE WHEN IS_NULLABLE = 'NO' THEN ' NOT NULL' ELSE '' END),(case when IFNULL(column_comment,'')='' then '' else concat(' COMMENT \'' , column_comment ,'\'') end),';') as `sql`
FROM information_schema.COLUMNS
WHERE 1=1and TABLE_SCHEMA = 'xxx' #要修改的数据库名称and DATA_TYPE = 'text'and COLLATION_NAME='utf8mb4_0900_ai_ci';
http://www.lryc.cn/news/101916.html

相关文章:

  • MongoDB 基础学习记录
  • Visual Studio2022报错 无法打开 源 文件 “openssl/conf.h“解决方式
  • 【更新公告】Airtest更新至1.3.0.1版本
  • SQL语句集锦
  • 【多线程中的线程安全问题】线程互斥
  • 抖音seo短视频矩阵系统源代码开发技术分享
  • flutter实战(01)windows桌面版 修改应用logo、名称、显示位置、显示大小
  • 校园基础设施资源管理
  • Github git clone 和 git push 特别慢的解决办法
  • 【计网】TCP在可靠传输中都干了啥
  • windows下载安装FFmpeg
  • SwipeDelMenuLayout失效:Could not find SwipeDelMenuLayout-V1.3.0.jar
  • C++ 类和对象篇(零) 面向过程 和 面向对象
  • 列表list
  • gcc编译出现bar causes a section type conflict with foo问题解决
  • 12. Mybatis 多表查询 动态 SQL
  • 操作系统专栏1-内存管理from 小林coding
  • SpringCloud远程服务调用
  • Arcgis通过模型构建器计算几何坐标
  • java设计模式-工厂模式(下)
  • 深蓝学院C++基础与深度解析笔记 第13章 模板
  • 装饰器模式——扩展系统功能
  • 无涯教程-jQuery - jQuery.get( url, data, callback, type )方法函数
  • 【Vue3】递归组件
  • 【Python】数据分析+数据挖掘——探索Pandas中的索引与数据组织
  • matlab进阶:求解在约束条件下的多元目标函数最值(fmincon函数详解)
  • Kotlin知识点
  • 亚马逊云科技联合霞光社发布《2013~2023中国企业全球化发展报告》
  • 【解析excel】利用easyexcel解析excel
  • JQuery操作单选按钮Radio和复选框checkbox