用于发现当前默认数据库排序规则的Mysql查询(通过命令行客户端)
为了查看mysql数据库的当前排序规则集,我无法确定要运行哪个查询 我知道我可以通过这样的查询来更改它:用于发现当前默认数据库排序规则的Mysql查询(通过命令行客户端),mysql,database,phpmyadmin,collation,Mysql,Database,Phpmyadmin,Collation,为了查看mysql数据库的当前排序规则集,我无法确定要运行哪个查询 我知道我可以通过这样的查询来更改它: ALTER DATABASE db_name [[DEFAULT] CHARACTER SET charset_name] [[DEFAULT] COLLATE collation_name] 但我不想在不知道当前值的情况下这样做 我认为这实际上是可能的,因为在phpmyadmin中,您可以在数据库的“操作”选项卡中看到当前值,但我需要通过命令行客户端进行操作,在谷歌搜索了一点之后,我没有
ALTER DATABASE db_name
[[DEFAULT] CHARACTER SET charset_name]
[[DEFAULT] COLLATE collation_name]
但我不想在不知道当前值的情况下这样做
我认为这实际上是可能的,因为在phpmyadmin中,您可以在数据库的“操作”选项卡中看到当前值,但我需要通过命令行客户端进行操作,在谷歌搜索了一点之后,我没有找到答案
我可能会打开phpmyadmin代码来发现它。。在这样做之前,有人知道哪个是正确的查询吗
提前感谢。通过查看phpmyadmin代码,我自己找到了答案
show variables like "%collat%"
根据mysql版本,要运行的查询如下:
SELECT DEFAULT_COLLATION_NAME FROM data_dictionary.SCHEMAS WHERE SCHEMA_NAME = 'nameOfMyDb' LIMIT 1;
或
谢谢,这很有趣,但我认为这些是mysql配置的默认值,在创建新数据库时用作默认值(我猜)。具体的数据库是什么?
SELECT DEFAULT_COLLATION_NAME FROM information_schema.SCHEMATA WHERE SCHEMA_NAME = 'nameOfMyDb' LIMIT 1;