为了账号安全,请及时绑定邮箱和手机立即绑定

我有一个离线 SQLite 数据库,我想使其在线并使用它

我有一个离线 SQLite 数据库,我想使其在线并使用它

慕仙森 2023-09-06 17:02:33
在我的 android studio 项目中,我创建了一个离线 SQLite 数据库,用于将数据存储在用户的手机中。但现在,我想让这个数据库联机,这样每个拥有该应用程序的人都可以使用一个数据库(如果第一个用户更改数据,则数据将在第二个用户的应用程序中更改)。如何使现有数据库联机,以便多人可以使用它?(我需要使用PHP脚本创建一个新数据库吗?)这是我的一些数据库类代码:public class DatabaseHelper extends SQLiteOpenHelper {public static final String DATABASE_NAME = "mylist7641337.db";public static final String TABLE_NAME = "mylist_data7641337";public static final String COL1 = "ID";public static final String COL2 = "NAME1";public static final String COL3 = "YEAR1";public static final String COL4= "MONTH1";public static final String COL5= "DAY1";public static final String COL6= "PRICE1";public static final String COL7= "STYEAR1";public static final String COL8= "STMONTH1";public static final String COL9= "STDAY1";public DatabaseHelper(Context context) {    super(context, DATABASE_NAME, null, 1);}@Overridepublic void onCreate(SQLiteDatabase db) {    String createTable = "CREATE TABLE " + TABLE_NAME + " (ID INTEGER PRIMARY KEY AUTOINCREMENT, "            +"NAME1 TEXT, "            +"YEAR1 INTEGER, "            +"MONTH1 INTEGER, "            +"DAY1 INTEGER, "            +"PRICE1 INTEGER, "            +"STYEAR1 INTEGER, "            +"STMONTH1 INTEGER, "            +"STDAY1 INTEGER)";    db.execSQL(createTable);}
查看完整描述

1 回答

?
回首忆惘然

TA贡献1847条经验 获得超11个赞

首先,默认的Android数据库是SQLite. 它是一个嵌入式 DBMS。SQLite不是客户端-服务器数据库引擎。

TL,DR您无法提供对设备上本地数据库的访问。

与后端交互的最常见方式是创建 REST API/JSON RPC/... 并向后端服务器查询数据。

在后端,您可能拥有所需的任何 DBMS,但最终客户端将通过 API 从这些详细信息中抽象出来。

当然,您可以使用MySQL, PostgreSQL,...驱动程序直接查询数据库服务器,但不建议这样做。

总而言之,您可以将本地数据存储在本地数据库中,并定期将数据上传到服务器,也可以只与后端交互,而不在本地缓存数据。在后一种情况下,您将始终保持同步。

希望我解释了这件事。


查看完整回答
反对 回复 2023-09-06
  • 1 回答
  • 0 关注
  • 65 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信