在android中使用.sql文件?

在android中使用.sql文件?,android,sql,sqlite,android-sqlite,Android,Sql,Sqlite,Android Sqlite,我正在从事android项目。在我的项目中,我有一个“DatabaseFood.sql”文件(最初是一个.csv文件),它看起来像这样 BEGIN TRANSACTION; CREATE TABLE "android_metadata" ("locale" TEXT DEFAULT 'en_US'); INSERT INTO `android_metadata` VALUES ('en_US'); CREATE TABLE "DBfood" ( `SNo.` INTEGER, `Food`

我正在从事android项目。在我的项目中,我有一个“DatabaseFood.sql”文件(最初是一个.csv文件),它看起来像这样

BEGIN TRANSACTION;
CREATE TABLE "android_metadata" ("locale" TEXT DEFAULT 'en_US');
INSERT INTO `android_metadata` VALUES ('en_US');
 CREATE TABLE "DBfood" (
`SNo.`  INTEGER,
`Food`  TEXT,
`Calories`  INTEGER,
`Protein`   INTEGER,
`Fats`  INTEGER,
`Carbs` INTEGER,
`Fibers`    INTEGER);
 INSERT INTO `DBfood` VALUES (1,'Apple',120,50,40,30,20);
 INSERT INTO `DBfood` VALUES (2,'Banana',111,45,40,50,21);
 INSERT INTO `DBfood` VALUES (3,'Orange',91,31,33,19,21);
 INSERT INTO `DBfood` VALUES (4,'Grapes',110,41,11,14,13);
 INSERT INTO `DBfood` VALUES (5,'Mango',150,51,12,41,53);
 COMMIT;
现在我的问题是-

如果我计划在其中输入大约20000个条目,那么我应该把这个文件放在哪里呢。在res/raw文件夹或res/assets文件夹或其他地方

如何使用文件中的所有数据。例如,如果我想得到苹果的热量,或者如果我想得到橘子的蛋白质

我如何对食物的属性(卡路里、蛋白质等)进行算术运算

请用示例代码或参考资料为我提供问题的答案。另外,如果您知道如何将该文件与“DatabaseHelper.java”(for ex)类相匹配,我们将在该类中创建表、执行CRUD操作和执行查询


但请记住,它总是发生在大量数据的情况下。我只是把代码放在这里,以便用示例代码轻松回答。

我建议您阅读以下文章:

它详细解释了如何在android应用程序中处理SQL操作,并包含大量代码示例。它应该能回答你的大部分问题

一旦在应用程序第一次启动时创建了数据库,就可以执行SQL提供的任何操作,包括算术

至于将.sql文件放在何处:您可以将其放在/res/assets文件夹中,并通过

context.getAssets().open("my_sql_file.sql");

祝你好运

下面是一个说明如何解析/执行.sql文件的答案。。。不过,它确实假设每条语句都在一行上:可能是重复的