介绍
在 React Native 开发中,我们经常需要将数据存储在本地,以方便在应用程序中进行离线操作。@wondersistemas/react-native-sqlite-storage 就是一款能够在 React Native 中操作 SQLite 数据库的 npm 包。本文将详细介绍如何使用该 npm 包。
安装
首先,我们需要在项目中安装 @wondersistemas/react-native-sqlite-storage:
npm install @wondersistemas/react-native-sqlite-storage
使用方法
打开、创建数据库
打开或创建数据库,可以使用 openDatabase 函数:
-- -------------------- ---- ------- ------ ------ ---- ---------------------------------------------- ----- -------- - -------------------- - ----- ---------- --------- --------- -- -- -- ------------------------ ----- -- ----------------------- ------ --展开代码
这里使用 openDatabase
函数打开数据库。name
参数指定数据库的名称,location
参数指定数据库的存储位置(这里使用默认位置)。openDatabase
函数会返回一个 database
对象,该对象有各种操作数据库的方法。
执行 SQL 语句
可以使用 database
对象的 executeSql
方法执行 SQL 语句:
-- -------------------- ---- ------- ----------------------- -- - -------------- ------- ----- -- --- ------ ------ --- ------- ------- --- --- ----- ---- ----- --- ---------- --- -- -- --------------------- ----- -- --------------------- ------ -- -------------- ------- ---- ------ ------ ---- ------ --- ---- -------- ---- -- -- ---------------------- ----- -- ---------------------- ------ -- ---展开代码
这里使用 transaction
函数保证多个 SQL 语句在一个事务中执行。executeSql
函数第一个参数为 SQL 语句字符串,如果有参数需要传递,可以使用问号占位符(?
)占位。第二个参数为问号占位符的值,数组形式传递。第三个参数为成功回调函数,第四个参数为失败回调函数。
查询数据
可以使用 database
对象的 executeSql
方法查询数据:
-- -------------------- ---- ------- ----------------------- -- - -------------- ------- - ---- -------- --- --- - ---- -- -- - --------------- -------------- ------- ------------------ -- ----- -- ---------------------- ------ -- ---展开代码
这里返回的数据是一个数组,数组中每个元素对应一条记录,每个元素都是一个对象。
更新数据
可以使用 database
对象的 executeSql
方法更新数据:
database.transaction(tx => { tx.executeSql( 'UPDATE people SET name=?, age=?', ['Mike', 35], () => console.log('更新数据成功'), error => console.log('更新数据失败:', error) ); });
删除数据
可以使用 database
对象的 executeSql
方法删除数据:
database.transaction(tx => { tx.executeSql( 'DELETE FROM people WHERE id=?', [1], () => console.log('删除数据成功'), error => console.log('删除数据失败:', error) ); });
示例代码
-- -------------------- ---- ------- ------ ------ - ---------- -------- - ---- -------- ------ - ----- ---- - ---- --------------- ------ ------ ---- ---------------------------------------------- ----- --- - -- -- - ----- ------ -------- - ------------- ------------ -- - ----- -------- - -------------------- - ----- ---------- --------- --------- -- -- -- ------------------------ ----- -- ----------------------- ------ -- ----------------------- -- - -------------- ------- ----- -- --- ------ ------ --- ------- ------- --- --- ----- ---- ----- --- --------- -- -------------- ------- ---- ------ ------ ---- ------ --- ---- -------- --- -- -------------- ------- ---- ------ ------ ---- ------ --- ---- -------- --- -- -------------- ------- ---- ------ ------ ---- ------ --- ---- ------- --- -- -------------- ------- ---- ------ ------ ---- ------ --- ---- ------- --- -- --- ----------------------- -- - -------------- ------- - ---- -------- --- --- - ---- -- -- - -------------- - -- --- -- ---- ------ - ------ -------------- -- - ----- -------------- ------------------------ ----------------------- ------- --- ------- -- -- ------ ------- ----展开代码
总结
@wondersistemas/react-native-sqlite-storage 是一款非常方便的开源 npm 包,它能够使我们在 React Native 应用中轻松操作 SQLite 数据库。本文示范了打开、创建数据库,执行 SQL 语句,查询、更新、删除数据等一系列操作的代码,希望读者可以从中学习到相关的知识。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671a730d09270238225e5