Mysql 查询以发现当前默认数据库排序规则(通过命令行客户端)

标签 mysql database phpmyadmin collation

我不知道要运行哪个查询才能查看 mysql 数据库的当前排序规则集。

我知道我可以更改它运行这样的查询:

ALTER DATABASE db_name
[[DEFAULT] CHARACTER SET charset_name]
[[DEFAULT] COLLATE collation_name]

但我不想在不知道当前值的情况下这样做。

我认为这实际上是可能的,因为在 phpmyadmin 中你可以在数据库的操作选项卡中看到当前值,但我需要通过命令行客户端来完成,在谷歌搜索了一下后我没有找到答案。

可能我会打开 phpmyadmin 代码来发现它..在做之前,有人知道哪个是正确的查询吗?

提前致谢。

最佳答案

自己想通​​了,看phpmyadmin代码。

根据 mysql 版本,要运行的查询是这样的:

SELECT DEFAULT_COLLATION_NAME FROM data_dictionary.SCHEMAS WHERE SCHEMA_NAME = 'nameOfMyDb' LIMIT 1;

SELECT DEFAULT_COLLATION_NAME FROM information_schema.SCHEMATA WHERE SCHEMA_NAME = 'nameOfMyDb' LIMIT 1;

关于Mysql 查询以发现当前默认数据库排序规则(通过命令行客户端),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12107096/

相关文章:

MySQL; LEFT OUTER 在 DATEDIFF 上加入索引需要 300 多秒(但只是第一次)

MySQL - 基于列值的连接?

php - MySQL - phpMyadmin - 错误 #1064

php - 尝试替换文本后如何更正 SQL 语法错误

php - 使用mysql编辑数据库中的数据时出错

自动完成的 MySQL 排序问题

PHP/mySQL 数据未显示在表中

java - 通过java程序远程连接mySQL

android - 使用 greenDao 关闭数据库

mysql - 我怎样才能处理这个一对多的关系,这个约束在一个 note ON 字段上?