Mysql 显示创建表,指定引擎关键字

Mysql 显示创建表,指定引擎关键字,mysql,Mysql,我的生产数据库是MySql 5.1.66。我的开发版本是5.5.28。在生产环境中运行语句showcreatetable时,tableddl脚本使用关键字TYPE来表示存储引擎。但该关键字不久前被引擎弃用并替换,因此如果不修改5.1版的脚本输出,我无法在5.5版中创建表。是否存在某种类型的参数来显示创建表,从而导致输出使用ENGINE关键字而不是TYPE 5.1的输出示例: CREATE TABLE `acr` ( `IncidentNum` varchar(25) ) TYPE=InnoD

我的生产数据库是MySql 5.1.66。我的开发版本是5.5.28。在生产环境中运行语句
showcreatetable
时,tableddl脚本使用关键字TYPE来表示存储引擎。但该关键字不久前被引擎弃用并替换,因此如果不修改5.1版的脚本输出,我无法在5.5版中创建表。是否存在某种类型的参数来显示创建表,从而导致输出使用ENGINE关键字而不是TYPE

5.1的输出示例:

CREATE TABLE `acr` (
  `IncidentNum` varchar(25)
) TYPE=InnoDB;
5.5中需要运行的内容:

CREATE TABLE `acr` (
  `IncidentNum` varchar(25)
) ENGINE=InnoDB;

您可以在mysqldump的参数中使用
no_table_options
值:

  • 生成与其他数据库系统或较旧的MySQL服务器更兼容的输出。name的值可以是
    ansi
    mysql323
    mysql40
    postgresql
    oracle
    mssql
    db2
    maxdb
    无键选项
    无表选项
    ,或
    无字段选项
    。要使用多个值,请用逗号分隔它们。这些值与设置服务器SQL模式的相应选项具有相同的含义。看

    此选项不保证与其他服务器兼容。它只启用当前可用于使转储输出更兼容的SQL模式值。例如,不将数据类型映射到Oracle类型或使用Oracle注释语法

    此选项要求服务器版本为4.1.0或更高版本。对于较旧的服务器,它什么也不做

如以下文件所述:

SQL模式的完整列表 下表介绍了所有支持的模式:

[deletia]

  • 不要在的输出中打印特定于MySQL的表选项(例如
    引擎
    )。此模式由在可移植模式下使用


您可以在mysqldump的参数中使用
no_table_options
值:

  • 生成与其他数据库系统或较旧的MySQL服务器更兼容的输出。name的值可以是
    ansi
    mysql323
    mysql40
    postgresql
    oracle
    mssql
    db2
    maxdb
    无键选项
    无表选项
    ,或
    无字段选项
    。要使用多个值,请用逗号分隔它们。这些值与设置服务器SQL模式的相应选项具有相同的含义。看

    此选项不保证与其他服务器兼容。它只启用当前可用于使转储输出更兼容的SQL模式值。例如,不将数据类型映射到Oracle类型或使用Oracle注释语法

    此选项要求服务器版本为4.1.0或更高版本。对于较旧的服务器,它什么也不做

如以下文件所述:

SQL模式的完整列表 下表介绍了所有支持的模式:

[deletia]

  • 不要在的输出中打印特定于MySQL的表选项(例如
    引擎
    )。此模式由在可移植模式下使用