npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

hydbjs

v1.0.5

Published

- hydb 是一个用于浏览器的轻量级数据库操作库,使用 ts+promise 提供了对 IndexedDB 的封装和便捷的 API,用于简化数据库的创建、表的管理和数据的增删改查操作。它提供了一系列的方法来操作数据库和表,包括创建、删除、查询和更新数据等功能,来减少开发者的成本.

Downloads

4

Readme

hydb 类方法说明文档

  • hydb 是一个用于浏览器的轻量级数据库操作库,使用 ts+promise 提供了对 IndexedDB 的封装和便捷的 API,用于简化数据库的创建、表的管理和数据的增删改查操作。它提供了一系列的方法来操作数据库和表,包括创建、删除、查询和更新数据等功能,来减少开发者的成本.

构造函数

let db = new hydb();

版本介绍

  hyDB.js 用于原生js,可直接script标签进行引入在进行实例化
  hydb.esm.js 用于es6模块,可通过import进行引入
  hydb.cjs.js 用于commonjs模块,可通过require进行引入

数据库操作方法

介绍

  • useDatabase(dbName: string): Promise<void>: 使用/创建指定数据库
  • deleteAllDatabases(): Promise<any>: 删除所有数据库
  • deleteDatabase(dbName: string): Promise<any>: 删除指定数据库
  • showDBs(): Promise<void>: 显示当前数据库列表
  • getTableNames(dbName: string): Promise<any[]>: 获取指定数据库的表名列表

useDatabase(dbName: string): Promise<void>

  • 功能:使用/创建指定数据库,如果数据库不存在则创建,存在则表示使用数据库
  • 参数:
    • dbName - 数据库名称
  • 返回值:返回一个 Promise 对象,包含当前数据库实例
//使用/创建指定数据库,如果数据库不存在则创建,存在则表示使用数据库
(async function () {
  let res = await db.useDatabase("数据库名称");
})();

deleteAllDatabases(): Promise<any>

  • 功能:删除所有数据库
  • 参数:无
  • 返回值:返回一个 Promise 对象,包含删除结果的状态和消息

deleteDatabase(dbName: string): Promise<any>

  • 功能:删除指定数据库
  • 参数:
    • dbName - 数据库名称
  • 返回值:返回一个 Promise 对象,包含删除结果的状态和消息

showDBs(): Promise<void>

  • 功能:初始化操作,获取所有数据库实例并保存到 this.dbs
  • 参数:无
  • 返回值:无

getTableNames(dbName: string): Promise<any[]>

  • 功能:获取指定数据库中的表名列表
  • 参数:
    • dbName - 数据库名称
  • 返回值:返回一个 Promise 对象,包含表名称数组

表的操作方法

创建表

  • createTable(dbName: string, tableName: string, indexs: any[]): Promise<any>: 创建表
  • deleteTable(dbName: string, tableName: string): Promise<any>: 删除指定表
  • deleteAllTables(dbName: string): Promise<any>: 删除所有表

createTable(dbName: string, tableName: string, indexs: any[]): Promise<any>

  • 功能:创建表
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • indexs - 索引数组
  • 返回值:返回一个 Promise 对象,包含创建结果的状态和状态码
//创建表
(async function () {
  let res = await db.createTable("数据库名称", "表的名称", "索引数组");
})();

deleteTable(dbName: string, tableName: string): Promise<any>

  • 功能:删除指定表
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
  • 返回值:返回一个 Promise 对象,包含删除结果的状态和消息

deleteAllTables(dbName: string): Promise<any>

  • 功能:删除指定数据库中的所有表
  • 参数:
    • dbName - 数据库名称
  • 返回值:返回一个 Promise 对象,包含删除结果的状态和消息

表数据操作方法

查询

  • findTableData(dbName: string, tableName?: string): Promise<any[]>: 查询表的数据
  • findByKey(dbName: string, tableName: string, key: any): Promise<any>: 根据主键查询数据
  • findByIndex(dbName: string, tableName: string, indexName: string, indexValue: any): Promise<any>: 根据索引查询

插入

  • insertOne(dbName: any, tableName: string, data: any): Promise<any>: 向指定表中插入一条数据
  • insertMany(dbName: any, tableName: string, data: any[]): Promise<any>: 向指定表中插入多条数据
(async function () {
  //插入一条数据
  let res = await db.insertOne("数据库名称", "表的名称", "数据");
})();

更新

  • updateDataByPrimaryKey(dbName: any, storeName: string, id: number, data: any): Promise<{ success: boolean }>: 根据主键更新数据
  • updateDataByIndex(dbName: any, storeName: string, indexName: string, indexValue: any, data: any): Promise<{ success: boolean }>: 根据索引更新数据
(async function () {
  //根据主键更新数据
  let res = await db.updateDataByPrimaryKey(
    "数据库名称",
    "表的名称",
    "主键",
    "数据"
  );
})();

删除

  • deleteOneByPk(dbName: string, tableName: string, id: number): Promise<any>: 根据主键删除数据
  • deleteOneByIndex(dbName: string, tableName: string, indexName: string, indexValue: any): Promise<any>: 根据索引删除数据
  • deleteManyByPKs(dbName: string, tableName: string, ids: number[]): Promise<any>: 根据主键数组批量删除数据
  • deleteManyByIndexs(dbName: string, tableName: string, indexName: string, indexValues: any[]): Promise<any>: 根据索引批量删除数据

findTableData(dbName: string, tableName?: string): Promise<any[]>

  • 功能:查询表的数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称,可选,不传则查询所有表的数据
  • 返回值:返回一个 Promise 对象,包含查询结果数组
(async function () {
  //查询表的数据
  let res = await db.updateDataByPrimaryKey("数据库名称", "表的名称_可选");
})();

findByKey(dbName: string, tableName: string, key: any): Promise<any>

  • 功能:根据主键查询数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • key - 主键值
  • 返回值:返回一个 Promise 对象,包含查询结果对象

findByIndex(dbName: string, tableName: string, indexName: string, indexValue: any): Promise<any>

  • 功能:根据索引查询数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • indexName - 索引名称
    • indexValue - 索引值
  • 返回值:返回一个 Promise 对象,包含查询结果对象

insertOne(dbName: any, tableName: string, data: any): Promise<{ success: boolean }>

  • 功能:向指定表中插入一条数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • data - 待插入的数据对象
  • 返回值:返回一个 Promise 对象,包含插入结果的状态

insertMany(dbName: any, tableName: string, data: any[]): Promise<any>

  • 功能:向指定表中插入多条数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • data - 待插入的数据数组
  • 返回值:返回一个 Promise 对象,包含插入结果的状态

updateDataByPrimaryKey(dbName: any, storeName: string, id: number, data: any): Promise<{ success: boolean }>

  • 功能:根据主键更新数据
  • 参数:
    • dbName - 数据库名称
    • storeName - 存储对象的名称
    • id - 主键值
    • data - 要更新的数据对象
  • 返回值:返回一个 Promise 对象,包含更新结果的状态

updateDataByIndex(dbName: any, storeName: string, indexName: string, indexValue: any, data: any): Promise<{ success: boolean }>

  • 功能:根据索引更新数据
  • 参数:
    • dbName - 数据库名称
    • storeName - 存储对象的名称
    • indexName - 索引名称
    • indexValue - 索引值
    • data - 要更新的数据对象
  • 返回值:返回一个 Promise 对象,包含更新结果的状态

deleteOneByPk(dbName: string, tableName: string, id: number): Promise<any>

  • 功能:根据主键删除数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • id - 主键值
  • 返回值:返回一个 Promise 对象,包含删除结果的状态和消息

deleteOneByIndex(dbName: string, tableName: string, indexName: string, indexValue: any): Promise<any>

  • 功能:根据索引删除数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • indexName - 索引名称
    • indexValue - 索引值
  • 返回值:返回一个 Promise 对象,包含删除结果的状态和消息

deleteManyByPKs(dbName: string, tableName: string, ids: number[]): Promise<any>

  • 功能:根据主键数组批量删除数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • ids - 主键值数组
  • 返回值:返回一个 Promise 对象,包含删除结果的状态和消息

deleteManyByIndexs(dbName: string, tableName: string, indexName: string, indexValues: any[]): Promise<any>

  • 功能:根据索引批量删除数据
  • 参数:
    • dbName - 数据库名称
    • tableName - 表名称
    • indexName - 索引名称
    • indexValues - 索引值数组
  • 返回值:返回一个 Promise 对象,包含删除结果的状态和消息

不常用

updateDataBaseVersion(hyDB: any)

  • 功能:更新数据库版本号
  • 参数:hyDB - 数据库实例
  • 返回值:无

closeCurrentConnection()

  • 功能:关闭当前数据库连接
  • 参数:无
  • 返回值:无

getIndexedDBVersion(databaseName: string)

  • 功能:获取指定数据库的版本号
  • 参数:
    • databaseName - 数据库名称
  • 返回值:返回一个 Promise 对象,包含数据库的版本号