sql 命令不适用于 auto_increment

Posted

技术标签:

【中文标题】sql 命令不适用于 auto_increment【英文标题】:sql command not working with auto_increment 【发布时间】:2013-05-30 12:12:28 【问题描述】:

我正在尝试使用 postresql 的 shell 创建这个表

CREATE TABLE Customer (
    id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(255),
    surname VARCHAR(255)
);

但它不起作用我得到这样的东西

ERREUR: erreur de syntaxe sur ou près de « AUTO_INCREMENT » 第 2 行:id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,

【问题讨论】:

查看手册:postgresql.org/docs/current/static/ddl-default.html 尝试对 id 使用 bigint,同时检查语法是否正确。 【参考方案1】:

Postgres 不支持auto_increment。请改用serial

CREATE TABLE Customer 
(
    id serial PRIMARY KEY, 
    name VARCHAR(255), surname VARCHAR(255) 
);

SQLFiddle demo

【讨论】:

ERREUR: erreur de syntaxe sur ou près de « SERIAL » LINE 3: id INT NOT NULL SERIAL PRIMARY KEY ,

以上是关于sql 命令不适用于 auto_increment的主要内容,如果未能解决你的问题,请参考以下文章

简单的 SQL 命令不适用于特定参数

SQL UPDATE 命令不适用于 Command.Parameters.Add/AddWithValue [重复]

SQL 插入适用于 Oracle SQL Developer,但不适用于 python

如何在 SQL Server 数据库中添加 auto_increment 主键?

mysqldump 不适用于全文索引?

SQL 不适用于大样本