什么?!新版 Node.js V22.5 自带 SQLite 模块啦

296 阅读1分钟

前言

2024年7月,Node.js V22.5.0 版本发布,自带了 SQLite 模块,意味着开发者可以直接在程序中使用 SQLite 数据库,而无需引入第三方库👍。 话不多说,感觉来体验一波✈。

安装/升级

我现在用的是21.4.0版本,可以直接升级,或者使用 node 版本管理工具(nvmfnm)。

前往官网下载最新的22.7.0版本。 验证下是否安装成功:

$ node -v
v22.7.0

小试牛刀

// sqlite.test.js
import { DatabaseSync } from 'node:sqlite'

const db = new DatabaseSync("./test.db")
const TABLE = "test"

if(!db.prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='${TABLE}'`).get()){
    console.debug(`检测到 ${TABLE} 表不存在,自动创建...`)
    db.exec(`CREATE TABLE ${TABLE} (info TEXT)`)

    const stmt = db.prepare(`INSERT INTO ${TABLE} VALUES (?)`);
    for (let i = 0; i < 10; i++) {
        stmt.run("数据 " + i)
    }
}

let count = db.prepare(`SELECT COUNT(*) as count FROM ${TABLE}`).get().count
console.debug(`${TABLE} 表共有 ${count} 条数据`)

const query = db.prepare(`SELECT * FROM ${TABLE}`)
console.debug(query.all())