2011-03-24 91 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