我想在MySQL中存储域名(例如:google.com - 没有“http://”和“www”)作为主键+索引。
所以当我通过PHP调用域时,我应该更快地根据该域获得结果。 现在我以纯文本插入域名。
这是正确的方法吗?或者我需要哈希吗?
请你的想法
答案 0 :(得分:2)
我认为你不应该在主索引中使用char / varchar。而是创建具有唯一约束的int PK和域列。
我认为这样可以适用于你的情况。
查看一些原因:
CHAR() or VARCHAR() as primary key in an ISAM mySQL table?
http://forums.mysql.com/read.php?153,243809,243818#msg-243818
修改
以下是示例表。我根据假设创建了这个表。根据您的需要进行更改。
CREATE TABLE IF NOT EXISTS `test`.`sample` (
`id` INT NOT NULL AUTO_INCREMENT ,
`domains` VARCHAR(100) NOT NULL ,
PRIMARY KEY (`id`) ,
UNIQUE INDEX `domains_UNIQUE` (`domains` ASC) );
P.S。使用mysql workbench创建。