博客
关于我
SQLITE3和MySql的自动增长
阅读量:660 次
发布时间:2019-03-15

本文共 1008 字,大约阅读时间需要 3 分钟。

Sqlite 3 和 MySql 在 创建 表结构 时,两者 都 使用了 类似的 数据类型 和primary key约束,但是 如果在设计 自 增 数 序 的 方面 有 所 区别。 下面 分别 讨 论 两者 代码 的 主要 差异。

在 Sqlite 3 中, 人员 表 的 创建 语法 是 CREATE TABLE person (personid INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(20))。 其 中 personid 是一个自增来的主键字段,кими在 插入 数据 时 自动 增加。 这个特性 在 Sqlite 中 是 必须 的,因为 如果 Explicitly 主键 是 Incrementing 的话,就不用设置 AUTOINCREMENT。 Sqlite 的 AUTOINCREMENT 特性 特别 适用于 需要 自动生成 唯一 随机 售 工 便宜 和 安全 的场景。

与 Sqlite 不同的是,MySql 的 AUTO INCREMENT 是 不 可选 的 特性。 创建 表 时,主键字段 必须 由 INCREMENT BY n 或 NO INCREMENT BY n 指定。 比如:CREATE TABLE person (personid INTEGER PRIMARY KEY AUTO _ INCREMENT, name VARCHAR(20))。 这个特性 意义 在于允许主键字段 如 personid 随着 插入 数据 而 升级,这在 往往 是 完全的 可选项目。例如,工作 记录 itujuan 主键往往使用 INCREMENT BY 1。 但是, MySQL 的这种写法 不会自动生成,因此 dataType 的,默认值必须指定。

对于那些 需要 串行 化或 并发 插入 的应用场景,Sqlite 的默认方式更有优势。 这是因为 SQLite 的多线程 �优化侧重于并发读写,而 Sqlite 的自增主键不会导致并发插入的 队列 � literals。 如果具体需求是 记录需要 按时间顺序排列,且希望主键自动生成。

总之,在软件开发中,选择 Sqlite 还是使用 MySQL 取决于具体的应用场景,但是一般来说, 如果是在移动应用 或桌面 应用的 单用户 数据 库 的情况下,Sqlite 的主键 自增 可能更 为便利。

转载地址:http://wxfqz.baihongyu.com/

你可能感兴趣的文章
springboot redis key乱码
查看>>
Win10禁用自带的笔记本键盘
查看>>
写时复制集合 —— CopyOnWriteArrayList
查看>>
什么是redis的缓存雪崩, 穿透, 击穿?
查看>>
【转载】DSP基础--定点小数运算
查看>>
idea thymeleaf页面变量报错解决
查看>>
云游戏,打响5G第一战
查看>>
Docker 拉取镜像速度太慢
查看>>
【毕设-STM32f103寄存器版本】智能防盗系统
查看>>
Vue Itea软件里直接npm run build 报错npm ERR! missing script :build
查看>>
勒索病毒Kraken2.0.7分析
查看>>
MySQL错误1366处理方法
查看>>
驱动程序之_1_字符设备_13_USB设备_1_基本概念
查看>>
微机原理 6-计算机中常用的数制
查看>>
window系统下安装使用curl命令工具
查看>>
假如计算机是中国人发明的,那代码应该这么写
查看>>
神器 Codelf !
查看>>
趣图:会算法和不会算法的区别
查看>>
区块链会2020再次爆发,先学点DAPP压压惊,跟我一起学《区块链DApp入门实战》
查看>>
问题解决28:微信网页授权出现redicet_uri 参数错误
查看>>