2012-07-13 44 views
0

我已经有一堆sql创建表查询和注入写。如何使用Ormlite将这些加载到我的Android应用程序中?从我了解的数据库是这样创建的例子:用SQL查询加载数据库到Ormlite

 @DatabaseField(generatedId = true) 
     private Integer id; 

     @DatabaseField 
     private String description; 
... 
    TableUtils.createTable(connectionSource, Thing.class); 

我会想与前四周做自动的另一种方式:

CREATE TABLE "History" ("_id" INTEGER PRIMARY KEY NOT NULL , "date" DATETIME, "program_id" INTEGER, "FOREIGN KEY(program_id) REFERENCES Program (_id)"); 

最好的办法是从读一个文本文件添加了我的资源。

正如你所看到的我对此有点困惑,可以这样做吗?还应该提到使用外键的Im,它是否支持?

回答

0

听起来你需要将你的对象与你的创建语句进行匹配。例如,如果你想要做下面的CREATE语句:

CREATE TABLE "History" ("_id" INTEGER PRIMARY KEY NOT NULL , 
    "date" DATETIME, "program_id" INTEGER, 
    "FOREIGN KEY(program_id) REFERENCES Program (_id)"); 

那么你应该要建设以下Java来与之对应:

public class History { 
     // maybe generatedId = true 
     @DatabaseField(columnName = "_id", nullable = false, id = true) 
     public int id; 
     @DatabaseField(/* not sure if you need to set a date type here */ 
     public Date date; 
     @DatabaseField(foreign = true, columnName = "program_id") 
     public Program program; 
} 

public class Program { 
     // maybe generatedId = true 
     @DatabaseField(columnName = "_id", nullable = false, id = true) 
     public int id; 
     ... 
} 

你可以做你自己的创造,然后捏捏相应的Java类,使他们能够坚持到表 - 匹配列与字段。