本文共 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/