要了解有关MySQL存储引擎的更多信息。如果被指定的存储引擎无法利用,则MySQL使用MyISAM代替。例如,一个表定义包括ENGINE=BDB选项,但是MySQL服务器不支持BDB表,则表被创建为MyISAM表。这样,如果您在主机上有事务表,但在从属机上创建的是非交互式表(以加快速度)时,可以进行复制设置。在MySQL 5.1中,如果没有遵守存储引擎规约,则会出现警告。其它表选项用于优化表的性质。在多数情况下,您不必指定表选项。这些选项适用于所有存储引擎,另有说明除外。·AUTO_INCREMENT表的初始AUTO_INCREMENT值。在MySQL 5.1中,本选项只适用于MyISAM和MEMORY表。InnoDB也支持本选项。如果引擎不支持AUTO_INCREMENT表选项,则要设置引擎的第一个auto-increment值,需插入一个“假”行。该行的值比创建表后的值小一,然后删除该假行。对于在CREATE TABLE语句中支持AUTO_INCREMENT表选项的引擎,您也可以使用ALTER TABLE tbl_nameAUTO_INCREMENT = n来重新设置AUTO_INCREMENT值。·AVG_ROW_LENGTH表中平均行长度的近似值。只需要对含尺寸可变的记录的大型表进行此项设置。当创建一个MyISAM表时,MySQL使用MAX_ROWS和AVG_ROW_LENGTH选项的乘积来确定得出的表有多大。如果有一个选项未指定,则表的最大尺寸为65,536TB数据。(如果操作系统不支持这么大的文件,则表的尺寸被限定在操作系统的限值处。)如果您想缩小指针尺寸使索引更小,速度更快,并且您不需要大文件,则您可以通过设置myisam_data_pointer_size系统变量来减少默认指针的尺寸。(见Server System Variables" style="text-decoration: none; color: rgb(9, 67, 130);">5.3.3节,“服务器系统变量”。)如果您希望所有的表可以扩大,超过默认限值,并且愿意让表稍微慢点,并稍微大点,则您可以通过设置此变量增加默认指针的尺寸。·[DEFAULT] CHARACTER SET用于为表指定一个默认字符集。CHARSET是CHARACTER SET的同义词。·COLLATE用于为表指定一个默认整序。·CHECKSUM如果您希望MySQL随时对所有行进行实时检验求和(也就是,表变更后,MySQL自动更新检验求和),则应把此项设置为1。这样做,表的更新速度会略微慢些,但是更容易寻找到受损的表。CHECKSUM TABLE语句用于报告检验求和(仅限于MyISAM)。·COMMENT表的注释,最长60个字符。·CONNECTIONFEDERATED表的连接字符串。( 注释:较早版本的MySQL使用COMMENT选项用于连接字符串。·MAX_ROWS您打算储存在表中的行数目的最大值。这不是一个硬性限值,而更像一个指示语句,指示出表必须能存储至少这么多行。·MIN_ROWS您打算存储在表中的行数目的最小值。·PACK_KEYS如果您希望索引更小,则把此选项设置为1。这样做通常使更新速度变慢,同时阅读速度加快。把选项设置为0可以取消所有的关键字压缩。把此选项设置为DEFAULT时,存储引擎只压缩长的CHAR或VARCHAR列(仅限于MyISAM)。如果您不使用PACK_KEYS,则默认操作是只压缩字符串,但不压缩数字。如果您使用PACK_KEYS=1,则对数字也进行压缩。在对二进制数字关键字进行压缩时,MySQL采用前缀压缩:o每个关键字需要一个额外的字节来指示前一个关键字中有多少字节与下一个关键字相同。o指向行的指针以高位字节优先的顺序存储在关键字的后面,用于改进压缩效果。这意味着,如果两个连续行中有许多相同的关键字,则后续的“相同”的关键字通常只占用两个字节(包括指向行的指针)。与此相比,常规情况下,后续的关键字占用storage_size_for_key + pointer_size(指针尺寸通常为4)。但是,只有在许多数字相同的情况下,前缀压缩才有好处。如果所有的关键字完全不同,并且关键字不能含有NULL值,则每个关键字要多使用一个字节。(在这种情况中,储存压缩后的关键字的长度的字节与用于标记关键字是否为NULL的字节是同一字节。)·PASSWORD使用密码对.frm文件加密。在标准MySQL版本中,本选项不起任何作用。·DELAY_KEY_WRITE如果您想要延迟对关键字的更新,等到表关闭后再更新,则把此项设置为1(仅限于MyISAM)。·ROW_FORMAT定义各行应如何储存。当前,此选项只适用于MyISAM表。对于静态行或长度可变行,此选项值可以为FIXED或DYNAMIC。myisampack用于把类型设置为COMPRESSED。请参见MyISAM Table Storage Formats" style="text-decoration: none; color: rgb(9, 67, 130);">15.1.3节,“MyISAM表的存储格式”。在默认情况下,InnoDB记录以压缩格式存储(ROW_FORMAT=COMPACT)。通过指定ROW_FORMAT=REDUNDANT,仍然可以申请用于较早版本的MySQL中的非压缩格式。·RAID_TYPE在MySQL 5.0中,RAID支持被删除了。要了解有关RAID的说明,请参见。·UNION当您想要把一组相同的表当作一个表使用时,采用UNION。UNION仅适用于MERGE表。请参见The MERGE Storage Engine" style="text-decoration: none; color: rgb(9, 67, 130);">15.3节,“MERGE存储引擎”。对于您映射到一个MERGE表上的表,您必须拥有SELECT, UPDATE和DELETE权限。(注释:以前,所有被使用的表必须位于同一个数据库中,并作为MERGE表。这些限制不再适用。)·INSERT_METHOD如果您希望在MERGE表中插入数据,您必须用INSERT_METHOD指定应插入行的表。INSERT_METHOD选项仅用于MERGE表。使用FIRST或LAST把行插入到第一个或最后一个表中;或者使用NO,阻止插入行。请参见The MERGE Storage Engine" style="text-decoration: none; color: rgb(9, 67, 130);">15.3节,“MERGE存储引擎”。·DATA DIRECTORY, INDEX DIRECTORY通过使用DATA DIRECTORY='directory'或INDEX DIRECTORY='directory',您可以指定MyISAM存储引擎放置表格数据文件和索引文件的位置。注意,目录应是通向目录的完整路径(不是相对路径)。仅当您没有使用--skip-symbolic-links选项时,DATA DIRECTORY, INDEX DIRECTORY才能使用。操作系统必须有一个正在工作的、线程安全的realpath()调用。要了解全面信息,请参见Using Symbolic Links for Tables on Unix" style="text-decoration: none; color: rgb(9, 67, 130);">7.6.1.2节,“在Unix平台上使用表的符号链接”。--------------------------------------------------------------------------------------下面是一些查询示例:CREATE TABLEtable1(column1varchar(50),column2varchar(50));----------------------CREATE TABLE`dna` (`seq_region_id`int(10)unsignedNOT NULL,`sequence`longtext NOT NULL,#这个数据类型加上下面的设置,可以导入超大文本数据PRIMARY KEY(`seq_region_id`))ENGINE=MyISAMDEFAULT CHARSET=latin1MAX_ROWS=750000AVG_ROW_LENGTH=19000;-----------------------------CREATE TABLE`mapping_session` (`mapping_session_id`int(10) unsignedNOT NULL AUTO_INCREMENT,`old_db_name`varchar(80)NOT NULL DEFAULT'',`new_db_name`varchar(80)NOT NULL DEFAULT'',`old_release`varchar(5)NOT NULL DEFAULT'',`new_release`varchar(5)NOT NULL DEFAULT'',`old_assembly`varchar(20)NOT NULL DEFAULT'',`new_assembly`varchar(20)NOT NULL DEFAULT'',`created` datetimeNOT NULL,PRIMARY KEY(`mapping_session_id`)        #此处可定义多个主键 或在上面直接定义)ENGINE=MyISAMAUTO_INCREMENT=392DEFAULT CHARSET=latin1;