返回顶部
首页 > 资讯 > 数据库 >Electron中使用sql.js操作SQLite数据库
  • 349
分享到

Electron中使用sql.js操作SQLite数据库

Electron中使用sql.js操作SQLite数据库 2021-02-20 00:02:09 349人浏览 绘本
摘要

推荐sql.js——一款纯js的sqlite工具。 一、关于sql.js sql.js(https://GitHub.com/kripken/sql.js)通过使用Emscripten编译SQLite C代码,将SQLite移植到WE

推荐sql.js——一款纯js的sqlite工具

一、关于sql.js

sql.js(https://GitHub.com/kripken/sql.js)通过使用Emscripten编译SQLite C代码,将SQLite移植到WEBassembly。 它使用存储在内存中的虚拟数据库文件,因此不会保留对数据库所做的更改。 但是,它允许您导入任何现有的sqlite文件,并将创建的数据库导出为javascript类型的数组

这里没有C绑定或node-gyp编译,sql.js是一个简单的JavaScript文件,可以像任何传统的JavaScript库一样使用。 如果您正在JavaScript中构建本机应用程序(例如,使用Electron),或者在node.js中工作,则您可能更喜欢使用SQLite与JavaScript的本地绑定(Https://www.npmjs.com/package/sqlite3)。

SQLite是公共领域,sql.js是MIT许可的。

Sql.js早于WebAssembly,因此从asm.js项目开始。 它仍然支持asm.js以实现向后兼容。

二、为什么要用sql.js

开发electron应用的时候如果想要使用sqlite3,步骤上除了npm安装以外还要rebuild,比较麻烦,参见electron官方文档之使用 Node 原生模块(https://electronjs.org/docs/tutorial/using-native-node-modules)。

如果你想找一个开箱即用的sql库,那么sql.js将是个不错的选择。sql.js是sqlite的Webassembly版,使用上和sqlite基本没有区别。sql.js支持浏览器端直接引入cdn,或者下载sql-wasm.js和sql-wasm.wasm到本地后引入,也支持npm导入。

三、在Electron项目中安装sql.js

假设我们已经搭建好了Electron的一个hello world项目,如https://xushanxiang.com/2019/11/installing-electron.html

安装sql.js

cnpm install sql.js --save

安装完后,查看目录结构:

tree node_modules/sql.js -L 2
node_modules/sql.js
├── AUTHORS
├── GUI
│   └── index.html
├── LICENSE
├── Makefile
├── README.md
├── cache
│   ├── check.txt
│   ├── extension-functions.c
│   └── sqlite-amalgamation-3280000.zip
├── dist
│   ├── sql-asm-debug.js
│   ├── sql-asm-memory-growth.js
│   ├── sql-asm.js
│   ├── sql-wasm-debug.js
│   ├── sql-wasm-debug.wasm
│   ├── sql-wasm.js
│   ├── sql-wasm.wasm
│   ├── worker.sql-asm-debug.js
│   ├── worker.sql-asm.js
│   ├── worker.sql-wasm-debug.js
│   └── worker.sql-wasm.js
├── examples
│   ├── GUI
│   ├── README.md
│   ├── persistent.html
│   ├── repl.html
│   ├── requireJS.html
│   ├── simple.html
│   └── start_local_server.py
├── index.html
├── out
│   ├── api.js
│   ├── extension-functions.bc
│   ├── sqlite3.bc
│   └── worker.js
├── package.JSON
├── sqlite-src
│   └── sqlite-amalgamation-3280000
└── src
├── api-data.coffee
├── api.coffee
├── exported_functions.json
├── exported_runtime_methods.json
├── exports.coffee
├── output-post.js
├── output-pre.js
├── shell-post.js
├── shell-pre.js
└── worker.coffee
9 directories, 41 files

dist目录文件说明详见 https://github.com/kripken/sql.js#versions-of-sqljs-included-in-the-distributed-artifacts

四、在Electron项目中,如何使用sql.js操作SQLite数据库

1、创建一个SQLite数据库

我们可以在命令行中创建,也可以通过在线SQL解释器(http://kripken.github.io/sql.js/examples/GUI/)创建并下载一个。

写代码时,大家可以参考由源代码中的注释生成的完整文档——http://kripken.github.io/sql.js/documentation/#http://kripken.github.io/sql.js/documentation/class/Database.html

我们使用后者下载一个数据库 sql.db 放到项目根目录。再看一下我们当前的项目文件结构:

d tree  -L 1
.
├── index.html
├── main.js
├── node_modules
├── package.json
└── sql.db
1 directory, 4 files

当然,我们也可以在项目运行时,动态创建一个,不过先创建静态文件目录,拷贝相关文件到静态文件目录。

→ mkdir -p static/js
→ cp node_modules/sql.js/dist/sql-wasm.* static/js/
→ ls static/js/
  sql-wasm.js   sql-wasm.wasm

再改动 index.html 文件内容:



  
    
    create the database
  
  
    

如果你没有安装SQLiteStudio之类的软件,可以把上面动态创建的数据库文件载入http://kripken.github.io/sql.js/examples/GUI/,再执行下面SQL语句得到下面表格结果。

SELECT * FROM test
col1col2
1 111
2 222

2、对SQLite数据库进行查询操作

替换 index.html 文件内容如下:



  
    
    Execute SELECT sql
  
  
    

3、对SQLite数据库进行增、改、删操作

替换 index.html 文件内容如下:



  
    
    Execute SELECT sql
  
  
    

原文:https://xushanxiang.com/2019/11/electron-sql-js-sqlite.html

您可能感兴趣的文档:

--结束END--

本文标题: Electron中使用sql.js操作SQLite数据库

本文链接: https://lsjlt.com/news/2775.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Electron中使用sql.js操作SQLite数据库
    推荐sql.js——一款纯js的sqlite工具。 一、关于sql.js sql.js(https://github.com/kripken/sql.js)通过使用Emscripten编译SQLite C代码,将SQLite移植到We...
    99+
    2021-02-20
    Electron中使用sql.js操作SQLite数据库
  • 使用Python对SQLite数据库操作
    SQLite是一种嵌入式数据库,它的数据库就是一个文件。由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用程序中,甚至在IOS和Android的APP中都可以集成。 Python内置了S...
    99+
    2022-06-04
    操作 数据库 Python
  • c#中怎么操作sqlite数据库
    在C#中操作SQLite数据库需要引用System.Data.SQLite命名空间,然后使用SQLiteConnection和其他相...
    99+
    2024-04-09
    sqlite c#
  • Python如何操作SQLite数据库
    Python如何操作SQLite数据库,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。前言:SQLite属于轻型数据库,遵守ACID的关系型数据库管理系统,它包含在一个相对小...
    99+
    2023-06-25
  • Python 操作SQLite数据库详情
    目录一、简单操作SQLite数据库1、简单的插入语句的使用2、简单的查询语句的使用二、更新数据与删除三、实现用户名密码验证四、SQLite检索时间记录五、SQLite提取数据并绘图 ...
    99+
    2024-04-02
  • Qt怎么操作SQLite数据库
    今天小编给大家分享一下Qt怎么操作SQLite数据库的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、SQLite 介绍Sq...
    99+
    2023-07-05
  • python 操作sqlite数据库的方法
    目录前言简单介绍创建或连接数据库游标创建表插入查询查询总数查询所有查询第一条分页查询更新删除总结前言 sqlite的官网 sqlite.org/index.html SQLite 作为一个SQL数据库引擎,是由C语...
    99+
    2022-06-02
    python 操作sqlite python 操作数据库
  • Python练习之操作SQLite数据库
    目录前言1.创建SQLite数据库2.向SQLite表中插入数据3.查询SQLite表中的数据总结前言 文章包括下几点: 考点--操作SQLite数据库: 创建SQLite数据库;向表中插入记录;其他数据库操作。 面试题...
    99+
    2022-06-13
    Python操作SQLite数据库 操作SQLite数据库
  • Android SQLite数据库增删改查操作的使用详解
    一、使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库——SQLite,SQLite3支持NULL、INTEGER、REAL(浮点...
    99+
    2022-06-06
    sqlite数据库 SQLite Android
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据...
    99+
    2022-06-06
    方法 sqlite数据库 SQLite Android
  • Sqlite数据库表的操作有哪些
    这篇文章主要介绍“Sqlite数据库表的操作有哪些”,在日常操作中,相信很多人在Sqlite数据库表的操作有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Sqlite数据...
    99+
    2024-04-02
  • C#操作SQLite数据库方法小结
    一、SQLite介绍 1、SQLite 简介 SQLite是一个开源、免费的小型RDBMS(关系型数据库),能独立运行、无服务器、零配置、支持事物,用C实现,内存占用较小,支持绝大数...
    99+
    2024-04-02
  • Python中SQLite数据库的使用
    目录预备知识SQL语句创建数据表execute()方法插入记录查询SQL语句fetchall()SQLite_master表更新记录删除记录例题练习SQL(结构化查询语言)是一种通用数据库查询语言。SQL具有数据定义、数...
    99+
    2023-04-28
    Python SQLite Python SQLite数据库操作
  • Android中操作SQLite数据库快速入门教程
    SQLite是Android平台软件开发中会经常用到的数据库产品,作为一款轻型数据库,SQLite的设计目标就是是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非...
    99+
    2022-06-06
    sqlite数据库 SQLite 教程 Android
  • 在.Net中操作SQLite数据库有什么优点
    这篇文章将为大家详细讲解有关在.Net中操作SQLite数据库有什么优点,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 总结:关于SQLit...
    99+
    2024-04-02
  • (数据库)SQLite的使用
        数据库的应用相当广泛,可以应用在Java、Android、IOS、Windows等所有主要的操作系统上SQLite虽然是轻量级的小引擎,但是能够支持高达2TB...
    99+
    2024-04-02
  • Android SQLite数据库的增 删 查找操作
    在Android开发中,有时我们需要对SQLite数据库进行增,删,查,找等操作,现在就来简单介绍一下,以下为详细代码。     &nb...
    99+
    2022-06-06
    sqlite数据库 SQLite Android
  • Android SQLite数据库操作代码类分享
    使用示例: package cn.hackcoder.beautyreader.db; import android.content.Context; import andr...
    99+
    2022-06-06
    sqlite数据库 SQLite Android
  • Android SQLite数据库加密的操作方法
    一、前言 SQLite是一个轻量级的、跨平台的、开源的嵌入式数据库引擎,也是一个关系型的的使用SQL语句的数据库引擎, 读写效率高、资源消耗总量少、延迟时间少,使其成为移动平台数据库...
    99+
    2024-04-02
  • Qt操作SQLite数据库的教程详解
    目录0.前言1.驱动2.初相遇3.创建表4.执行增删改查5.进阶0.前言 SQLite是一款开源、轻量级、跨平台的数据库,无需server,无需安装和管理配置。它的设计目标是嵌入式的...
    99+
    2022-12-08
    Qt操作SQLite数据库 Qt SQLite数据库 Qt操作SQLite
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作