TYPE=MyISAM 与 ENGINE=MyISAM 的区别(摘要版)

TYPE=MyISAM 和 ENGINE=MyISAM 都是设置数据库存储引擎的语句
(老版本的MySQL使用TYPE而不是ENGINE(例如,TYPE = MYISAM)。

MySQL 5.1为向下兼容而支持这个语法,但TYPE现在被轻视,而ENGINE是首先的用法。
一般地,ENGINE 选项是不必要的;除非默认已经被改变了,MyISAM是默认存储引擎。

create 语句后面的TYPE=MyISAM
选项只在MySQL 3.23和以后版本中被实现。作为默认。

不同的表类型是:
ISAM 原来的表处理器
MyISAM 全新二进制可移植的表处理器
HEAP 用于该表的数据仅仅存储在内存中
没有 type=myisam 语句也行,因为从3.23版本以后,默认都是myisam类型!!

转载于:https://www.cnblogs.com/zhuyongzhe/p/7684766.html

### 回答1: 在 MySQL 中,语法中出现"near 'type = innodb'"是因为 'TYPE = InnoDB' 是在创建表的语句中使用错误的关键字。在 MySQL 5.5.3 之前的本中,'TYPE' 关键字被用于指定表的存储引擎,而不是 'ENGINE' 关键字。从MySQL 5.5.3本开始,'TYPE' 被 'ENGINE' 替代。 正确的语法应该是使用 'ENGINE = InnoDB' 来指定表的存储引擎。示例代码如下: CREATE TABLE table_name ( column1 datatype, column2 datatype, ... ) ENGINE = InnoDB; 需要注意的是,'ENGINE' 关键字后面应该是等号(=)而不是冒号(:)。如果不指定存储引擎,默认情况下表将使用 MyISAM 引擎。 如果你在代码或脚本中看到这个错误,你可以重新编写语句,将 'TYPE' 修改为 'ENGINE'。这样就可以解决这个语法错误。 所以,正确的表创建语句应该是: CREATE TABLE 表名 ( 列1 数据类型, 列2 数据类型, ... ) ENGINE = InnoDB; 通过修正 'TYPE = InnoDB' 到 'ENGINE = InnoDB',你就可以顺利创建一个使用 InnoDB 存储引擎的表了。 ### 回答2: 语法错误的原因是type = innodb这部分在语法上是不正确的。在MySQL中,用于定义表的存储引擎的语法应该是ENGINE=InnoDB。 正确的语法是:ENGINE=InnoDB,其中ENGINE是存储引擎的关键字,InnoDB是具体的存储引擎名称。这个语法用于创建表时指定使用的存储引擎。 InnoDB是一种可靠性高、性能好的存储引擎,是MySQL的默认存储引擎。它支持事务、行级锁定和外键约束等功能,适用于对数据完整性和一致性要求较高的应用。 存储引擎是决定MySQL表如何存储和操作数据的重要部分,不同的存储引擎具有不同的特点和适用场景。在选择存储引擎时,需要考虑数据的读写频率、事务要求、性能需求和数据完整性等因素。 总之,正确的语法是ENGINE=InnoDB,用于在创建表时指定使用InnoDB存储引擎。 ### 回答3: 在使用MySQL数据库时,当看到错误消息"near 'type = innodb'"时,通常是因为在创建表时使用了错误的语法。 在MySQL的旧本中,用于指定表的存储引擎的语法是"type = xxx",其中"xxx"代表具体的存储引擎类型。然而,从MySQL 5.5本开始,此语法已经过时,应该使用"engine = xxx"来指定存储引擎。 因此,在遇到"near 'type = innodb'"这个错误消息时,可能是因为在创建表时使用了旧本的语法。为了解决这个问题,可以将"type = innodb"替换为"engine = innodb",确保使用正确的语法。修改后的语句应该类似于: CREATE TABLE 表名 ( 列1 数据类型, 列2 数据类型, ... ) engine = innodb; 需要注意的是,具体的表名、列名和数据类型应该根据实际情况进行相应的替换。 通过使用正确的语法,就可以顺利地创建使用InnoDB存储引擎的表了。此存储引擎是MySQL的默认存储引擎,提供了事务处理和行级锁定等功能,适合处理复杂的数据操作需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值