如何检查MySQL表是否为UTF-8,是否有storageEngine InnoDB?

如何检查MySQL表是否为UTF-8,是否有storageEngine InnoDB?,mysql,utf-8,innodb,storage-engines,Mysql,Utf 8,Innodb,Storage Engines,谷歌搜索只是找到了从一种格式转换到另一种格式的说明,但我似乎找不到确切的方法来确定我首先使用的是哪种格式 我怎样才能: 检查表的编码字符是什么 检查表使用的存储引擎 检查所有表是否都是特定编码 检查是否所有表都有特定的存储引擎 您可以使用信息模式来了解每个表的引擎 select table_name,engine from information_schema.tables where table_schema = 'your_database' 对于您可以使用的编码 show create

谷歌搜索只是找到了从一种格式转换到另一种格式的说明,但我似乎找不到确切的方法来确定我首先使用的是哪种格式

我怎样才能:

  • 检查表的编码字符是什么
  • 检查表使用的存储引擎
  • 检查所有表是否都是特定编码
  • 检查是否所有表都有特定的存储引擎

  • 您可以使用信息模式来了解每个表的引擎

    select table_name,engine 
    from information_schema.tables
    where table_schema = 'your_database'
    
    对于您可以使用的编码

    show create table table_name
    
    或者,甚至更好

    select 
    c.character_set_name 
    from information_schema.tables as t,
         information_schema.collation_character_set_applicability as c
    where c.collation_name = t.table_collation
    and t.table_schema = "your_db"
    and t.table_name = "table_name";
    

    这可能很有用:这很有意义,但您确定这就是语法吗?我得到这个错误:“字段列表”中的未知列“用户”。是的,我肯定。这是一个关于使用mysql>=5.0的信息模式的简单查询。你在说什么,我的第一个或第二个查询?我在尝试第一个查询。但是我会继续用itOh进行黑客攻击我知道我做错了什么..我在第一个查询lol的select子句中插入了实际的表名..好的,所有的工作都非常好-谢谢!很高兴我能帮助你。再见:)