1.0.4 • Published 2 years ago

lazy-kit-sqlite v1.0.4

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

lazy-kit-sqlite

sqlite3 quick toolkit based on Nodejs

Functions

enum Action {
  RUN = "run",
  GET = "get",
  ALL = "all",
}
interface Query {
  action:Action;
  sql: string;
  params?: any[];
}
/**
 * 获取SQLite3的实例
 * @param filename 文件名
 * @returns SQLite
 */
function sqlite(filename?:string): SQLite;
/**
 * SQLite
 */
class SQLite {
  constructor(filename?:string);

  /**
   * 关闭连接
   * @returns 
   */
  close(): Promise<any>;

  /**
   * 执行SQL, 增删改的操作
   * @param sql 
   * @param ...args 
   * @returns 
   */
  run(sql: string, ...args: any[]): Promise<string>;
  
  /**
   * 查询并获取一条记录
   * @param sql 
   * @param ...args 
   * @returns row
   */
  get<T>(sql: string, ...args: any[]): Promise<T>;

  /**
   * 查询并返回多条记录
   * @param sql 
   * @param ...args 
   * @returns row[]
   */
  all<T>(sql: string, ...args: any[]): Promise<T[]>;
  
  /**
   * 查询并逐条通过callback函数返回, 全部返回后, 返回条数
   * @param sql 
   * @param params 
   * @param callback 逐条返回
   * @returns 
   */
  each<T>(sql: string, params: any[], callback:(err: Error | null, row: T)=>void): Promise<number>;

  /**
   * 批处理, 支持run、get、all操作
   * @param queries Query[]
   * @returns 
   */
  batch(queries:Query[]): Promise<any>;

  /**
   * 事务处理, 支持run、get、all操作
   * @param queries Query[]
   * @returns 
   */
  transact(queries:Query[]): Promise<any>;
}
1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago