问题描述
天哪,只需将其设置为null,就可以了!!!!
INSERT INTO `users` (`id`, `name`, `email`, `pass`, `reg_time`) VALUES
(null, 'user', 'user@server.com', 'pass', null);
解决方法
我有这样的最小数据库
CREATE TABLE IF NOT EXISTS `users` (
`id` int(8) unsigned NOT NULL AUTO_INCREMENT,`name` varchar(64) COLLATE utf8_unicode_ci NOT NULL,`email` varchar(128) COLLATE utf8_unicode_ci NOT NULL,`pass` varchar(128) COLLATE utf8_unicode_ci NOT NULL,`reg_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,PRIMARY KEY (`id`),UNIQUE KEY `email` (`email`),UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=40 ;
然后我尝试插入新用户,仅设置用户名/电子邮件/密码
“;“插入到
users
设置名称=’用户名’,电子邮件=’用户_电子邮件’,’通行证’=’用户_顶部_秘密_通行证’。”;
或每次我插入新的ID如:
INSERT INTO `users` (`id`,`name`,`email`,`pass`,`reg_time`) VALUES
(1,'user','user@server.com','pass','2016-01-31 03:10:13');
名称和电子邮件是唯一的,时间是默认的当前时间戳,我不需要测试它们。这很好,但是我如何插入ID,我需要吗?
在本地phpmyadmin上进行测试不会给我带来任何新的变化。
upd:使用php函数删除了过时的代码,仅删除了sql。