下面的命令错哪里了呢?
create table user(
serial int unsigned not null primary key,
);

解决方案 »

  1.   

    CREATE TABLE `tb_user` (
      `id` int(10) NOT NULL auto_increment,
      .......
    }
      

  2.   

    primary key本身应该是not null的吧?
      

  3.   


    下面这样就行,是不是primary key 默认是null啊?
    create table user1( 
    serial int unsigned primary key auto_increment, 
    birthday date
    );
    但是问题又来了
    create table user1( 
    serial int unsigned primary key auto_increment, 
    );
    这样就不行啊???到底primary key,auto_increment和not null这三个有什么关系啊?要怎么用呢?
      

  4.   

    http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.html
    SERIAL is an alias for BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE. create table user1(
    `serial` SERIAL
    ); 
      

  5.   

    但是问题又来了
    create table user1(
    serial int unsigned primary key auto_increment,
    );
    这样就不行啊???
    ===================
    这个问题 是因为你多了个,
    语句出错create table user1(
    serial int unsigned primary key auto_increment
    );
    这样mysql还是能正确解析语句的。
      

  6.   

    CREATE TABLE `tb_account1` (
      `fd_account_id` int(10) NOT NULL auto_increment PRIMARY KEY ,
      `fd_account_no` varchar(50) NOT NULL default '',
      `fd_account_accountno` varchar(50) NOT NULL default '',
      `fd_account_name` varchar(50) NOT NULL default '',
      `fd_account_bank` varchar(50) NOT NULL default '',
      `fd_account_money` float(12,2) NOT NULL default '0.00',
      `fd_account_principal` varchar(20) NOT NULL default '',
      PRIMARY KEY  (`fd_account_id`)

    正确用法
      

  7.   

    CREATE TABLE `tb_account1` ( 
      `fd_account_id` int(10) NOT NULL auto_increment , 
      `fd_account_no` varchar(50) NOT NULL default '', 
      `fd_account_accountno` varchar(50) NOT NULL default '', 
      `fd_account_name` varchar(50) NOT NULL default '', 
      `fd_account_bank` varchar(50) NOT NULL default '', 
      `fd_account_money` float(12,2) NOT NULL default '0.00', 
      `fd_account_principal` varchar(20) NOT NULL default '', 
      PRIMARY KEY  (`fd_account_id`) 

    正确用法
      

  8.   

    不好意思,这个是错误的,我想用来检测有什么错误 结果返回 [Err] 1068 - Multiple primary key defined
      

  9.   

    嗯,好像auto_increment,primary key和not null都没有冲突,只是我在末尾多了个逗号
    是不是这样的呢???
      

  10.   

    你执行下不就知道了。详细点的应该多看mysql文档。column_definition:
        col_name type [NOT NULL | NULL] [DEFAULT default_value]
            [AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY]
            [COMMENT 'string'] [reference_definition]