Skip to content

throw-out/Sqlite3Unity3D_ts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 

Repository files navigation

license

它是什么?

  • 简介

    基于Sqlite3开源数据库, 使用typescript语言开发. 搭配puerts为Unity平台提供简单易用丶高效性能的对象存储.

  • Sqlite3简介

    Sqlite3是遵守ACID的关系型数据库, 小巧丶嵌入式丶无需安装. 能够跟很多种语言相结合, 运行时占有资源非常低.

  • 原项目

    此项目基于SQLite4Unity3d

如何使用?

  • 数据类
  class Data {
      @Column("number")
      public id: number;
      @Column("string")
      public name: string;
      @Column("number")
      public age: number;
      @Column("number")
      public sex: number;
  }
  • 创建并打开连接
    let conn = new DBConnection("db path");
    conn.open();
  • 表操作
    //创建表
    conn.createTable(Data);
    //清空表
    conn.clearTable(Data);
    //删除表
    conn.dropTable(Data);
  • 插入/更新记录
    let data = new Data();
    //直接插入
    conn.insert(data);
    //条件更新或插入数据
    //注:基于字符串解析, 无法直接获取data.id的值, 需要通过对象传入
    let id = data.id;
    let ret = conn.table(Data)
        .where(o => o.id == id && id != 0, { id })
        .updateOrInsert(data);
  • 查询记录
    let queryAll: Data[] = conn.table(Data)
        .query();
    let queryBetween: Data[] = conn.table(Data)
        .between(o => o.age, "20", "30")
        .query();
  • 删除记录
    let ret = conn.table(Data)
        .where(o => o.id == 10)
        .delete();

特点

  • 无需手动构建SQL语句
  • 运行时构建对象和数据表信息
  • 有限的支持Lambda表达式解析(字符串解析)

性能测试

  • 暂无

说明

  • 此项目创建于 2020/10/30 , 尚不明确存在的BUG和性能问题, 未来将会陆续修复丶优化此项目.
  • 如果您在使用中遇到任何问题, 请与我联系
  • [联系邮箱]: throw.out@qq.com

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published