按照正常的SQL语句,创建一个数据表,并设置主键是这样的语句:

CREATE TABLE [Sample] (EventId int PRIMARY KEY, EventDate timestamp, EventMessage varchar(255), EventType varchar(10))

但使用这种办法,在SQLite中创建的的数据表,如果使用Insert语句插入记录,如下语句:

INSERT INTO Sample VALUES(null, '2013-12-26', 'hello.txt', 'Remove')

那么在实际添加的记录中,主键EventId对应的值不是一个自增的整数,而是一个null值。

经查询得知,在SQLite数据库中,使用int数据类型无法将该主键设置为自增,只有设置为interger数据类型,才能自增。因此,在创建SQLite的自增主键时,应该是下面的SQL语句:

CREATE TABLE [Sample] (EventId integer PRIMARY KEY, EventDate timestamp, EventMessage varchar(255), EventType varchar(10))

注意是:EventId integer PRIMARY KEY

这种语句创建的数据表,在使用Insert语句将null值插入到主键时,会在主键上生成一个自增的整数。

SQLite主键自增需要设置为integer PRIMARY KEY的更多相关文章

  1. EF 主键自增、级联删除

    一.主键自增 1.设置数据库中,主键自增 2.设置VS中Model1.edmx

  2. Mysql,SqlServer,Oracle主键自动增长的设置

    1.把主键定义为自动增长标识符类型 MySql 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: )); insert into customers ...

  3. Mysql,SqlServer,Oracle主键自动增长的设置

    在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: CREATE TABLE google(id INT AUTO_INCREMENT PRIMARY ...

  4. (转)Sqlite中INTEGER PRIMARY KEY AUTOINCREMENT和rowid的使用

    原文:http://www.cnblogs.com/peida/archive/2008/11/29/1343832.html Sqlite中INTEGER PRIMARY KEY AUTOINCRE ...

  5. erlang mnesia数据库设置主键自增

    Mnesia是erlang/otp自带的分布式数据库管理系统.mnesia配合erlang的实现近乎理想,但在实际使用当中差强人意,总会有一些不足.mnesia数据表没有主键自增的功能,但在mnesi ...

  6. oracle 主键自增 设置----杜恩德

    <div id="topicList"> <div class="forFlow"> <div class = "pos ...

  7. 关于oracle设置主键自增的问题

    关于orcale设置主键自增的问题 关于主键Oracle中并没有提供一个直接的语句设置,对于这个oralce一般都是用序列和触发器来实现 一下又两种方法来实现 一 ,不使用触发器 创建序列: crea ...

  8. 在Oracle中设置主键自增

    转自:https://www.2cto.com/database/201705/636725.html 数据库设置主键自增">oracle数据库设置主键自增: --创建表 create ...

  9. 使用powerdesigner建模时设置主键自增的问题

    研究了一下,其实只要双击表,选择columns,再双击在你所要设为自增型的键上(比如你的id)或者右键选择Properties,弹出一个ColumnProperties 对话框,我们看到有标识 ide ...

随机推荐

  1. css仅在指定ie浏览器生效

    css中判断IE版本的语句<!--[if gte IE 6]> Only IE 6/+ <![endif]-->: 1. <!--[if !IE]> 除IE外都可识 ...

  2. 跨域文件 clientaccesspolicy.xml

    <?xml version="1.0" encoding="utf-8" ?> <access-policy> <cross-do ...

  3. JavaWeb 输出九九乘法表,三角形,菱形

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  4. 三星framebuffer驱动代码分析

    一.驱动总体概述 本次的驱动代码是Samsung公司为s5pv210这款SoC编写的framebuffer驱动,对应于s5pv210中的内部外设Display Controller (FIMD)模块. ...

  5. 安装BeautifulSoup

    [安装BeautifulSoup] $ pip install beautifulsoup4 参考:https://www.crummy.com/software/BeautifulSoup/bs4/ ...

  6. DNS解析过程

    参考: http://www.maixj.net/ict/dns-chaxun-9208 http://blog.it985.com/8389.html DNS(Domain Name System) ...

  7. bzoj 2152聪聪可可

    2152: 聪聪可可 Time Limit: 3 Sec  Memory Limit: 259 MB Description 聪聪和可可是兄弟俩,他们俩经常为了一些琐事打起来,例如家中只剩下最后一根冰 ...

  8. 在Mac上安装IntelliJ IDEA

    这篇文章旨在介绍如何在Mac系统上安装IntelliJ IDEA,至于IntelliJ IDEA的介绍和使用方法,大家另行查阅,本篇的文章不再详细阐述. 简短解说,IntelliJ IDEA是可以用来 ...

  9. mesos框架编译部署

    mesos是什么呢? 一个分布式调度框架,让你编写代码时面对整个集群像面对一台机器那么简单.所有的运行,资源调度都可以由它来帮你搞掂. 1.mesos安装有两种方式: 1)参考官网的getstart, ...

  10. textfield设置左边距

    CGRect frame = f;//f表示你的textField的frame frame.size.width = ;//设置左边距的大小 UIView *leftview = [[UIView a ...