【问题标题】:sql lite storage set up in my react native我的 react native 中的 sqlite 存储设置
【发布时间】:2022-10-14 21:19:47
【问题描述】:

我对设置这个 sql lite 存储感到沮丧。我已经做了好几个星期了。使用 expo 并更改为正常的 react-native。仍然遇到问题。 this is when i try to console.log the opendatabase

当尝试像“db.transaction(tx=> console.log(tx))" 它返回 tx,但是当我尝试这段代码时db.transaction(tx => { tx.executeSql('SELECT * FROM Users', [], (tx, results) => {console.log('here')}})什么都没发生。

【问题讨论】:

  • 请提供足够的代码,以便其他人可以更好地理解或重现该问题。

标签: react-native sqlite


【解决方案1】:

请按照下面给出的示例代码逐步进行操作,也可以分享更多以供参考:打开数据库:

import SQLite from 'react-native-sqlite-storage';
const db = SQLite.openDatabase(
{
 name: ‘exampleDB',
 location: 'default',
 },
 (success: any) => { console.log(success) },
 (error: any) => { console.log(error) }
);

创建表

const CreateUserTable = () => {

db.transaction((tx: any) => {

tx.executeSql(

 "CREATE TABLE IF NOT EXISTS "

 + "user "

 + "(id INTEGER PRIMARY KEY, email VARCHAR, username VARCHAR, display_name VARCHAR, last_login VARCHAR, role_id INTEGER);"

 )

  })

 };


插入数据

const StoreUserDataToTable = async (data) => {

try {

   await db.transaction(async (tx) => {

   await tx.executeSql(

   "INSERT INTO user (id, email, username, display_name, last_login, role_id) VALUES (?,?,?,?,?,?)",

  [data.id, data.email, data.username, data.display_name, data.last_login, data.role_id]

  );

});

} catch (error) {

 console.log(" StoreUserDataToTable ==>> ", error);

  }

 }

获取数据:

db.transaction(tx => {

tx.executeSql(

 "SELECT * FROM user",

 [],

 (tx, results) => {

 console.log(" results ==>> ", results);

    },

   );

 });

有关更多详细信息,您可以查看此链接:https://infinitbility.com/react-native-sqlite-storage-examples-of-query/#create-table-query

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-31
    • 1970-01-01
    • 2010-11-14
    • 2021-10-29
    • 2018-06-20
    • 1970-01-01
    • 2018-01-09
    • 1970-01-01
    相关资源
    最近更新 更多