[mysql]插入到 php MyAdmin

标签: sql MySQL
发布时间: 2015/6/11 6:55:20
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

如果我有这样一个表:

CREATE TABLE IF NOT EXISTS users (
id int(10) unsigned NOT NULL AUTO_INCREMENT,
username varchar(255) COLLATE utf8_unicode_ci NOT NULL,
password varchar(255) COLLATE utf8_unicode_ci NOT NULL,
email varchar(255) COLLATE utf8_unicode_ci NOT NULL,
phone varchar(255) COLLATE utf8_unicode_ci NOT NULL,
name varchar(255) COLLATE utf8_unicode_ci NOT NULL,
created_at timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
updated_at timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (id)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=3 ;

而且我试着向它使用 phpmyadmin 与插入行:

INSERT INTO users ( 'john', 'johndoe', 'johndoe@gmail.com' , '123456', 'John', 2013-06-07 08:13:28, 2013-06-07 08:13:28)

然后为什么地狱遇到的错误:

 #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''john', 'johndoe', 'johndoe@gmail.com' , '123456', 'John', 2013-06-07 08:13:28, ' at line 1

解决方法 1:

日期的需要以及引用,你忘了 VALUES 关键字。

此外,因为你不插入的每一列的值,您需要指定您要插入在哪些列。因此将成为你的发言:

INSERT INTO users(
  username,
  password,
  email,
  phone,
  name,
  created_at,
  updated_at)
VALUES ( 
  'john', 
  'johndoe', 
  'johndoe@gmail.com' , 
  '123456', 
  'John', 
  '2013-06-07 08:13:28', 
  '2013-06-07 08:13:28')

证据就是在这小提琴: http://sqlfiddle.com/#! 2/c35d9/1

赞助商