大胸弟,如果你和我一样把官方给的方法和网上的文章都试过了还是编译不过,但又必须在nwjs里使用sqlite数据库,那么请继续往下看。

我的解决方法就是:

1、不编译

来吧,拥抱html5吧,具体来说就是那个叫websql的东西, openDatabase() 方法来打开已存在的数据库,如果数据库不存在,则会创建一个新的数据库,操作简单,神清气爽

/*Web SQL Database的API并不是HTM5规范的一部分而是自己拥有独立规范;
可以在新版的 Safari, Chrome 和 Opera 浏览器中工作(具体版本不详,nw0.32.3使用没毛病);
它提供了一套使用SQL操作客户端数据库的方法。
在介绍API之前,我们假设你基本熟悉SQL语句和用法。 openDatabase:该方法用于打开/创建数据库对象。
transaction:该方法赋予我们执行相关数据库语句或者回滚的能力。
executeSql:该方法用于执行数据库语句。*/ //如需要打开一个数据库,你可以使用一下代码:
var db = openDatabase('mydb', '1.0', 'my first database', 2 * 1024 * 1024);
//方法中包含了4个参数,分别是数据库名称、版本号、数据库描述和数据库预估大小,如果不存在就创建,存在就连接 // Create table and insert one line
db.transaction(function (tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS foo (id unique, text)');
tx.executeSql('INSERT INTO foo (id, text) VALUES (1, "synergies")');
tx.executeSql('INSERT INTO foo (id, text) VALUES (2, "luyao")');
}); // Query out the data
db.transaction(function (tx) {
tx.executeSql('SELECT * FROM foo', [], function (tx, results) {
var len = results.rows.length, i;
for (i = 0; i < len; i++) {
alert(results.rows.item(i).text);
}
});
});

具体可以参考菜鸟和下面这篇文章:

HTML5 Web SQL 数据库 | 菜鸟教程

nw.js node-webkit系列(21)在应用中如何数据持久化_黄泽平的博客-CSDN博客_nwjs 数据库

顺便说下,nwjs里使用websql后数据保存的位置 (我此时nw的版本是0.32.3)

db文件的保存位置在:C:\Users\Administrator\AppData\Local\你软件的名字\User Data\Default\databases

在这个目录下有个database.db别高兴这个不是,这个库里存的是通过你软件创建的所有数据数据库的记录,通过记录的ID在这个目录里有一个唯一的子目录,里面就有这个库里列出来的所有的库,名字只有个id,不是xx.db但是把他们拖到sqlite studio里你就发现这tm就是个sqlite的db文件。

2、使用electron吧

通过npm的包可以直接使用sqllite,无需自己编译,这个就不多说了。

-------------

编译nwjs/node-webkit可用的sqlite3简单靠谱的解决方案/在nwjs里使用sqlite的更多相关文章

  1. sqlite3简单教程整理

    一.Ubuntu下安装sqlite3 1.介绍:sqlite3是linux上的小巧的数据库,一个文件就是一个数据库. 2.安装:   要安装sqlite3,可以在终端提示符后运行下列命令:   sud ...

  2. Centos6.4编译安装Node.js(已验证)

    1.准备源文件包 [felix@MyTerminal Downloads]$ mv node-6.5.0 node [felix@MyTerminal Downloads]$ ls node node ...

  3. Nodejs学习笔记(十五)--- Node.js + Koa2 构建网站简单示例

    目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装项目其它需要包 清除冗余文件并重新规划项目目录 配置文件 规划示例路由,并新建相关文件 实现数据访问和业务逻辑相关方法 编写mys ...

  4. [转]Nodejs学习笔记(十五)--- Node.js + Koa2 构建网站简单示例

    本文转自:https://www.cnblogs.com/zhongweiv/p/nodejs_koa2_webapp.html 目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装 ...

  5. Nodejs学习笔记(十五)—Node.js + Koa2 构建网站简单示例

    前言 前面一有写到一篇Node.js+Express构建网站简单示例:http://www.cnblogs.com/zhongweiv/p/nodejs_express_webapp.html 这篇还 ...

  6. 实现node端渲染图表的简单方案

    实现node端渲染图表的简单方案 这个题目有点小,本篇博客真正谈论的应该是服务端生成图表的简单方案,这里面有两个关键字:服务端 & 简单,我们知道基于js有很多的图表库,知名的如D3.echa ...

  7. Node.js 环境搭建及简单应用

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型.如果你想创建自己的服务,那么Node.js是一个非 ...

  8. python sqlite3简单操作

    python sqlite3简单操作(原创)import sqlite3class CsqliteTable: def __init__(self): pass def linkSqlite3(sel ...

  9. 用 Node.js 实现的最简单的 HTTP 服务器

    用 Node.js 实现的最简单的 HTTP 服务器 //app.js var http = require('http'); http.createServer(function(req, res) ...

  10. 零元学Expression Blend 4 - Chapter 31 看如何简单的把SampleData 绑进ListBox里

    原文:零元学Expression Blend 4 - Chapter 31 看如何简单的把SampleData 绑进ListBox里 前面几章连续讲到ListBox的运用,本章要讲得是如何简单的把Sa ...

随机推荐

  1. Linux视频播放器安装

    sudo add-apt-repository ppa:rvm/smplayer sudo apt-get update sudo apt-get install smplayer PPA:  ppa ...

  2. Atcoder ABC389E Square Price 题解 [ 蓝 ] [ 二分 ] [ 贪心 ]

    Square Price:垃圾卡精度,垃圾卡精度,垃圾卡精度,傻逼出题人,傻逼出题人,傻逼出题人,傻逼出题人,傻逼出题人,傻逼出题人,傻逼出题人. 把 ll 改 __int128 前 WA*22,改 ...

  3. USACO24DEC Cake Game S 题解 [ 黄 ] [ 前缀和 ] [ adhoc ]

    Cake Game:小清新前缀和题,但是我场上想了半天优先队列贪心假完了 /ll/ll/ll. 观察 本题有三个重要的结论,我们依次进行观察. 不难发现,第二个牛一定会拿 \(\frac{n}{2}- ...

  4. 绝了,一招解决DeepSeek 提示“服务器繁忙,请稍后再试” 卡顿问题!(保姆级教程)

    大家好,我是狂师. 现在 AI 圈里讨论最多的话题就是:"国产之光DeepSeek了". 但用过的人也知道,是真的卡.动不动就提示:"服务器繁忙,请稍后再试" ...

  5. kvm远程管理

    列出centos7中所有的虚拟机 [root@kvm1 ~]# virsh list --all Id Name State ------------------------------------- ...

  6. NET中三种主机简单理解

    在NET中有三个不同的主机: .NET WebApplication 主机,也称为最小主机. 这是.NET 6中的一个新特性,旨在提供最小的启动时间和内存消耗.最小主机只包括.NET运行时的最基本组件 ...

  7. keycloak~关于社区认证的总结

    keycloak关于社区认证它有统一的设计,社区认证包括了github,microsoft,wechat,qq,dingtalk等等,当然你还可以扩展很多实现了oauth2协议的第三方社区,将它们对接 ...

  8. Qt QVariant 与 自定义类型转换的方法

    Example: 1. 声明自定义类型可用于QVariant,类也能用,也是这样,QT的基本数据类型不用声明就可以用,而且存入是什么类型,拿出来还是什么类型 #include <QMetaTyp ...

  9. Selenium IDE工具:火狐浏览器实例讲解IDE命令

    在本文中,通过Firefox浏览器上的示例学习Selenium IDE: 我们将使用的网址是"https://accounts.google.com"作为测试程序,通过本文你会 了 ...

  10. # 50 个最常被问到的 Selenium 面试问题和答案

    Q #1) 什么是自动化测试? 自动化测试或测试自动化是自动化手动过程以测试被测应用程序/系统的过程.自动化测试涉及使用单独的测试工具,该工具可让您创建可以重复执行且不需要任何手动干预的测试脚本. Q ...