代InnoDB表

下一个ID的我有一个InndoDB表代InnoDB表

CREATE TABLE `users` (

`id` int(10) unsigned NOT NULL,

`network_id` int(10) unsigned NOT NULL,

`nickname` varchar(20) NOT NULL DEFAULT '',

PRIMARY KEY (`id`),

UNIQUE KEY `network_id` (`network_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8

在PHP我接收阵列$network_info,其中包含对network_idnickname(它不从何处无关紧要)。对于users中的network_id,我想更新他们的nickname。对于那些不存在的,我想用生成的(新增加的)id将它们插入到表中。

之前,我用id作为AUTO_INCREMENT,但是查询如INSERT IGNORE等等,即使在插入没有完成时也会增加它,并且它不好。

哪个是解决这个问题的最好方法?

回答:

id行更改为这 -

`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, 

你可以留在INT(10),但我总是觉得最好还是有可能使ID的增长到巨大的规模,以防万一有一天它的需要。

而且CHARSET=ut8后,加 -

AUTO_INCREMENT=1; 

这样,表就知道从何处开始递增。

以上是 代InnoDB表 的全部内容, 来源链接: utcz.com/qa/258914.html

回到顶部