-5
CREATE TABLE users (
    user_id PRIMARY KEY AUTO_INCREMENT(10000,1), 
    first_name varchar(20), 
    last_name varchar(20), 
    email_address varchar(50), 
    facebook_url varchar(50), 
    bio varchar(20)
);

给出的错误是

您的 SQL 语法有错误:检查与您的 MySQL 服务器相对应的手册以获取正确的语法以在第 1 行使用'PRIMARY KEY AUTO_INCREMENT(10000,1), first_name varchar(20), last_name varchar(2'

4

8 回答 8

6

您的user_id列没有数据类型。

此外,我在MySQL 手册中没有看到任何关于您使用AUTO_INCREMENT. 如果您删除您试图传递的参数,它的工作原理:http ://sqlfiddle.com/#!2/7f9c6

于 2012-09-24T14:41:25.963 回答
4

有一些问题,您缺少我user_id字段上的数据类型。但是,如果您想将 设置AUTO_INCREMENT为从特定值开始,则需要使用ALTER TABLE

CREATE TABLE users 
(
  user_id int not null AUTO_INCREMENT PRIMARY KEY, 
  first_name varchar(20), 
  last_name varchar(20), 
  email_address varchar(50), 
  facebook_url varchar(50), 
  bio varchar(20)
);

Auto_Increment这将创建您的表,但如果您想设置为MySql Docs的起始值:

要更改用于新行的 AUTO_INCREMENT 计数器的值,请执行以下操作:

ALTER TABLE t2 AUTO_INCREMENT = 值;

添加以下行:

ALTER TABLE users AUTO_INCREMENT = 10000;

测试以确保这些值有效:

insert into users (first_name, last_name) values
('test1', 'test'),
('test2', 'test'),
('test3', 'test');

SQL Fiddle with Demo

或者,如果您不想使用ALTER TABLE,可以合并到CREATE TABLE语句中:

CREATE TABLE users 
(
  user_id int not null AUTO_INCREMENT PRIMARY KEY, 
  first_name varchar(20), 
  last_name varchar(20), 
  email_address varchar(50), 
  facebook_url varchar(50), 
  bio varchar(20)
)AUTO_INCREMENT = 10000;
于 2012-09-24T14:47:44.417 回答
0

你应该有AUTO_INCREMENT一个INTEGER类型列。所以,

user_id INTEGER PRIMARY KEY AUTO_INCREMENT(10000,1),
于 2012-09-24T14:42:12.677 回答
0

user_id PRIMARY KEY AUTO_INCREMENT(10000,1) 没有定义数据类型。

于 2012-09-24T14:42:13.813 回答
0

这个怎么样:

CREATE TABLE users (
  user_id int not null PRIMARY KEY AUTO_INCREMENT, 
  first_name varchar(20), 
  last_name varchar(20), 
  email_address varchar(50), 
  facebook_url varchar(50), 
  bio varchar(20)
);
于 2012-09-24T14:42:37.380 回答
0

尝试这个:

CREATE TABLE users (
    user_id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, 
    first_name varchar(20), 
    last_name varchar(20), 
    email_address varchar(50), 
    facebook_url varchar(50), 
    bio varchar(20)
);

您缺少 user_id 的列类型(假设为 INT)

于 2012-09-24T14:43:31.700 回答
0

试试这个: CREATE TABLE users (user_id INT UNSIGNED NOT NULL AUTO_INCREMENT = 10000, PRIMARY KEY (user_id), first_name varchar(20), last_name varchar(20), email_address varchar(50), facebook_url varchar(50), bio varchar(20 ));

于 2012-09-24T14:47:43.117 回答
-2

尝试这个:

创建表usersuser_idint(10)无符号AUTO_INCREMENT(10000,1),first_namevarchar(20),last_namevarchar(20),email_addressvarchar(50),facebook_urlvarchar(50),biovarchar(20),主键(user_id));

于 2012-09-24T14:42:41.063 回答