Access建表SQL语句Create Table设置自动增长列的关键字AUTOINCREMENT使用方法

SQL AUTO INCREMENT 字段

uto-increment 会在新记录插入表中时生成一个唯一的数字。

AUTO INCREMENT 字段

我们通常希望在每次插入新记录时,自动地创建主键字段的值。

我们可以在表中创建一个 auto-increment 字段。

用于 MySQL 的语法

下列 SQL 语句把 "Persons" 表中的 "P_Id" 列定义为 auto-increment 主键:

CREATE TABLE Persons
(
P_Id int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id)
)

用于 SQL Server 的语法

下列 SQL 语句把 "Persons" 表中的 "P_Id" 列定义为 auto-increment 主键:

CREATE TABLE Persons
(
P_Id int PRIMARY KEY IDENTITY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

MS SQL 使用 IDENTITY 关键字来执行 auto-increment 任务。

默认地,IDENTITY 的开始值是 1,每条新记录递增 1。

要规定 "P_Id" 列以 20 起始且递增 10,请把 identity 改为 IDENTITY(20,10)

用于 Access 的语法

下列 SQL 语句把 "Persons" 表中的 "P_Id" 列定义为 auto-increment 主键:

CREATE TABLE Persons
(
P_Id AUTOINCREMENT PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

MS Access 使用 AUTOINCREMENT 关键字来执行 auto-increment 任务。

默认地,AUTOINCREMENT 的开始值是 1,每条新记录递增 1。

要规定 "P_Id" 列以 20 起始且递增 10,请把 autoincrement 改为 AUTOINCREMENT(20,10)

注意:

1.自动增量自身就是整型,所以不用设置int的。
2.自动增量,当然是帮你自动输入那个字段的内容,所以不用设置它not null了。
3.自动增量,肯定不会有重复,所以你应该在设置主键之前设置它。

以下语句将执行失败:

CREATE TABLE Persons1
(
P_Id int not null PRIMARY KEY  AUTOINCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
返回错误信息:CREATE TABLE 语句中的语法错误。
也不会告诉你到底什么位置有错误,这点比较坑爹。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-12 21:14:28

Access建表SQL语句Create Table设置自动增长列的关键字AUTOINCREMENT使用方法的相关文章

Oracle 建表SQL语句

ALTER TABLE "USBP_TASK_PROGRESS_STAT" DROP CONSTRAINT FK_USBP_TAS_REFERENCE_USBP_TAS; DROP TABLE "USBP_TASK_PROGRESS_STAT" CASCADE CONSTRAINTS; /*==============================================================*//* Table: "USBP_TASK

oracle设置自动增长序列

我们在用MS SQL Server时,可以为表的主键设置为自动加1的效果;但是在Oracle当中,我们是无法直接设置一个字段为自动加1,需要先建立一个Sequence,然后为这个表创建一个Trigger,具体步骤如下: 1.先建立一个Order表格,用如下SQL语句 create table SCOTT.ORDER(      ID          NUMBER(10) not null,      BUYER       CHAR(20) not null,      MERCHANDISE

Oracle创建表语句(Create table)语法详解及示例

Oracle创建表语句(Create table)语法详解及示例   创建表(Create table)语法详解1. ORACLE常用的字段类型ORACLE常用的字段类型有VARCHAR2 (size) 可变长度的字符串, 必须规定长度CHAR(size) 固定长度的字符串, 不规定长度默认值为1NUMBER(p,s) 数字型p是位数总长度, s是小数的长度, 可存负数最长38位. 不够位时会四舍五入.DATE 日期和时间类型LOB 超长字符, 最大可达4GCLOB 超长文本字符串BLOB 超长

在线数据库表(sql语句)生成java实体类工具 - 参考手册

SQL建表语句 说明 格式良好的SQL建表语句,可以是直接从PowerDesigner.Navicat等工具中导出SQL建表语句.所谓格式良好,是指建表指令与表名必须在一行,字段名称.类型.注释必须在一行,因为这个工具是用正则实现的,并不是语法解析器,当然,以后有时间的话,会改进成解析器. 举例 -- ---------------------------- -- Table structure for t_activity -- ---------------------------- DRO

PowerDesigner如何导出建表sql脚本(转)

1 按照数据库类型,切换数据库. Database-> Change Current DBMS... 2 生成sql脚本 Database -> Database Generation 的Preview选项卡 点击保存按钮,保存产生的sql脚本到本地. [注意]: 1 本人使用的powerDesigner是15.2版本. 2 产生出的sql脚本一般会有drop table的语句,这些语句在运行时可以不要,以防报出表不存在的错误. PowerDesigner如何导出建表sql脚本(转),布布扣,

生成建表、建用户、建表空间语句

第一种方法是使用工具,如:pl/sql developer,在[工具]--[导出用户对象]出现就可以得到建表脚本.第二种方法是,sql语句. DBMS_METADATA.GET_DDL包可以得到数据库的对象的ddl脚本.如下(SQLPLUS中执行): 1.得 到一个表的ddl语句: SET SERVEROUTPUT ON SET LINESIZE 1000 SET FEEDBACK OFF set long 999999             ------显示不完整 SET PAGESIZE

Oracle拉出在sqlserver建表的语句

我们将Oracle数据同步到sqlserver时,是先得在sqlserver端建表的. 复杂的字段我们不同步,就只考虑下面四种数据类型. Oracle到SQLServer做的映射: int -> int number -> decimal(18,6) number(p,s) -> decimal(p,s) date -> datetime varchar2(n) -> nvarchar(n) 下面是从Oracle端执行的plsql脚本. /* 简介:从oracle拉出在mss

在线数据库表(sql语句)生成java实体类工具

相信每个做java开发的读者,都接触过SQL建表语句,尤其是在项目开发初期,因为数据库是项目的基石. 在现代项目开发中,出现了许多ORM框架,通过简单的实体映射,即可实现与数据库的交互,然而我们最初设计的一定是数据库表结构,而不是实体类.实体类仅仅是对底层数据结构的有损压缩,它仅仅是数据载体,不具备数据归档能力. 因此,很多时候,我们需要将原始的SQL建表语句转换成java实体类,这项工作看似简单,但若人工完成,工作量也是相当可观的,而且难免会出现差错. 到目前为止,笔者还没有发现比较靠谱的此类

使用sql语句创建修改SQL Server标识列(即自动增长列)

一.标识列的定义以及特点SQL Server中的标识列又称标识符列,习惯上又叫自增列.该种列具有以下三种特点:1.列的数据类型为不带小数的数值类型2.在进行插入(Insert)操作时,该列的值是由系统按一定规律生成,不允许空值3.列值不重复,具有标识表中每一行的作用,每个表只能有一个标识列.由于以上特点,使得标识列在数据库的设计中得到广泛的使用.二.标识列的组成创建一个标识列,通常要指定三个内容:1.类型(type)在SQL Server 2000中,标识列类型必须是数值类型,如下:decima