2011-03-24 60 views
0

我有一个表,叫做tablen。mysql表2唯一列

它具有这样的结构:

CREATE TABLE `tablen` (
    `a` int(11) unsigned not null, 
    `b` int(11) unsigned not null, 
    unique key(a,b) 
} 

此表1家中。我用一行数据打了它。如果发现它不是已经在表中的新的唯一行,那么它会被添加,否则我会得到返回的错误代码。

我猜测的主要是速度。我目前没有设施来压力测试设置,所以...

你会说什么是这张表的最佳格式?

Innodb或myisam?

回答

1

如果你有很多插入和更新,去InnoDB,因为它有行锁定。 MyISAM具有表锁定功能,这意味着,当插入记录(排队所有其他插入)时,整个表将被锁定。如果你有更多的选择比插入/更新,然后使用MyISAM,通常在那里更快(如果你也不喜欢外键)。

+0

那么innodb会更适合上述用途吗? – David19801 2011-03-24 19:37:59

+0

是的,在这种情况下,我会建议InnoDB。 – acme 2011-03-28 12:08:57