我怎样才能从数据库中读取android

时间:2014-09-18 12:07:10

标签: android sqlite

我尝试为宿舍的食堂写一个程序。我从宿舍的主管那里获取信息,数据可能会很出色。我可以转换这个csv,db或类似的东西。

但是,例如,如果我创建一个有30列的表,我应该逐一在代码中写这些,还是我可以自动执行。因为我在互联网上研究,我总是看到他们创建数据库并在代码中阅读后。

例如

 public void onCreate(SQLiteDatabase db) {
  String sql = "CREATE TABLE " + TABLE_COUNTRIES + "(id INTEGER PRIMARY KEY,country_name TEXT,country_code TEXT" + ")";

在此代码中,id country_name和country_code是用手写的。如果我们有更多列,我怎么能轻松地做到这一点。

2 个答案:

答案 0 :(得分:0)

您可以将列命名为col1col2 ..等等。为此,您可以使用

生成sql
String sql = "CREATE TABLE " + TABLE_COUNTRIES + "(id INTEGER PRIMARY KEY,country_name TEXT,country_code TEXT";

//change the **limit** as per ur needs
for(int i=1;i<=10;i++){
   //change the datatype from text to ur desired data type
   sql += ", col" + String.valueOf(i) + " text ";
}
sql += ")";

答案 1 :(得分:0)

您可以使用动态列名轻松创建查询字符串。前

public String createQuery(String tablename,int colcount){
    String query = "CREATE TABLE "
            + tablename + "(" ;

    for(int i=0;i<colcount;i++){

        if(i==colcount-1){
            query+= "COL"+i+" TEXT );";
        }else{
            query+= "COL"+i+" TEXT,";
        }


    }

    return query;
}

现在你可以通过db.execSQL来执行查询(createQuery(&#34; PRODUCT&#34;,10));