目前,我有一个categories包含 2 列的表 -category VARCHAR(50) NOT NULL PRIMARY KEY和parent VARCHAR(50). 该parent列是该列的外键 (FK) category。
这似乎是最明显的方法。但是,警钟在我的脑海中响起,因为我使用一VARCHAR列作为主键,这可能会在查询表时减慢操作速度。
我可以引入名为cat_id INT AUTO_INCREMENTPK的第三列,但它会引入一个没有意义的新列。
除了哪个更快,还应该考虑哪些其他因素?
NB我预测最多会有1000个类别左右,所以行数不是很高。但是,categoriesPK 列将成为其他表中许多外键的引用列。
我也应该使用(唯一的)用户名作为 PK 吗?