nodejs连接sqlite数据库,并在外部获取数据。

博客介绍了使用Node.js连接SQLite数据库,并从外部获取数据的方法,同时提到需要安装sqlite3插件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

nodejs连接sqlite数据库,并在外部获取数据。

//引入模块
const sqlite3 = require('sqlite3').verbose();
//
let sqliteDbPath = '数据库路径'//ge:./dy1.db
var db = new sqlite3.Database(sqliteDbPath)

//使用async/await优雅的处理异步,并且在外部获取数据
async function Pro1() {
    return new Promise(function(resolve, reject) {

        db.all(`select * from SrcDat`, function(err, row) {
            if (err) throw err;
            else {
                resolve(row)
            }

        })

    })
}
//调用
async function main() {
  //获取sqlite数据库值
    let row=await Pro1();
    console.log(row);
}

main()

需要安装sqlite3插件

npm i sqlite3
### Vue3连接 SQLite 数据库 在前端框架如 Vue3 中直接操作数据库不是常见的做法,因为通常数据库交互是在服务器端完成的。然而,在某些特定情况下,比如构建桌面应用或是离线优先的应用程序时,可以在客户端使用 SQLite。 对于 Web 应用来说,浏览器环境不支持直接访问文件系统中的 SQLite 文件,因此无法通过常规方式建立与本地 SQLite连接[^1]。但是可以考虑以下几种替代方案: #### 使用 Electron 构建桌面应用程序 Electron 是一个允许开发者创建跨平台桌面应用程序的技术栈,它结合了 Chromium 和 Node.js。在这种环境中可以直接利用 Node.js 模块来实现对 SQLite 数据库的操作。 安装必要的 npm 包: ```bash npm install sqlite3 electron --save ``` 编写简单的示例代码用于打开查询 SQLite 数据库: ```javascript const { app, BrowserWindow } = require(&#39;electron&#39;); const path = require(&#39;path&#39;); const sqlite3 = require(&#39;sqlite3&#39;).verbose(); // 创建窗口... app.whenReady().then(() => { const win = new BrowserWindow({ webPreferences: { preload: path.join(__dirname, &#39;preload.js&#39;) } }); let db = new sqlite3.Database(&#39;:memory:&#39;); db.serialize(function() { db.run("CREATE TABLE lorem (info TEXT)"); let stmt = db.prepare("INSERT INTO lorem VALUES (?)"); for (let i = 0; i < 10; i++) { stmt.run("Ipsum " + i); } stmt.finalize(); db.each("SELECT rowid AS id, info FROM lorem", function(err, row) { console.log(row.id + ": " + row.info); }); }); db.close(); }); ``` 此方法适用于需要打包成独立可执行文件的应用场景下运行于用户的计算机上而不是传统的基于Web的服务部署模式中。 #### 利用 IndexedDB 或者其他 Web 存储 API 如果目标是纯网页版应用,则可以选择内置的支持更好的存储机制——IndexedDB 来代替 SQLite 实现相似功能。虽然这不是严格意义上的 “连接SQLite”,但对于大多数需求而言已经足够强大,且完全兼容现代浏览器标准。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值