我想將每個訪問者的國家插入到我的數據庫中。 Maxmind返回2個字母的國家ISO,我可以存儲在一個VARCHAR(2)
,這將使用2個字節,或者,我可以使用一個UNSIGNED TINYINT
將使用1個字節,並將是所有國家的表中的ID。MySQL從另一個表插入國家iso或國家/地區編號
但是我碰到一個凹凸;我需要MyISAM
引擎來實現快速插入,但是MyISAM不支持FOREIGN KEYS
,所以我猜想對於每個插入,我必須在國家/地區表中進行選擇以檢索國家/地區ID。
我不知道什麼是最好的選擇,我絕對需要使用MyISAM
,因爲會有大量的插入,但我不想不斷地讓SELECTs
檢索國家ID。
關於CHAR存儲類型的好主意,我完全忘記了它,然而UNSIGNED TINYINT只能使用一個字節就能達到255,並且最多有196個國家。 – user2593609