2016-10-09 6 views
1

私は、onCreateメソッドを使用して、sqliteデータベースにテキストを挿入したいと考えています。どのようにデータを簡単にSqliteデータベースに作成するか?

私は数時間それに取り組んでいます(それは動作しません...)(私は新しい@アンドロイドです)。

andoidスタジオを使用します。 onCreateで簡単な方法を教えてください。 それは最初のログだけを表示します:Log.d( "Database op"、 "Database created");

このような何かが動作するはず
public class DatenbankHandler extends SQLiteOpenHelper { 
public static final int database_version = 1; 
public static final String DATABASE_NAME = "adventure.db"; 
public static final String dialog_var = "dialog"; 
public static final String gadget_row = "gadget"; 
public static final String TABLE_NAME = "liam"; 

public String Create_Query= "CREATE TABLE" + TABLE_NAME + " (_ID INTEGER PRIMARY KEY AUTOINCREMENT," + dialog_var + " TEXT, " + gadget_row + " TEXT);"; 


public DatenbankHandler(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { 
    super(context, DATABASE_NAME, null, database_version); 
    Log.d("Database op", "Database created"); 
} 


@Override 
public void onCreate(SQLiteDatabase db) { 
    // Create table 
    db.execSQL(Create_Query); 
    Log.d("Database Table", "Table created"); 

    // Insert into database 
    db.execSQL("INSERT INTO liam (" + dialog_var + "," + gadget_row + ") VALUES('I'm Liam', null)"); 
    Log.d("Database insert", "success"); 

} 

@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 

} 

}

+0

まずテーブルを作成し、テーブルにデータを挿入してください –

答えて

0

...あなたはSharedPreferencesManager sqlite = new SharedPreferencesManager (ACTIVITY_OR_CONTEXT);のように、このクラスをインスタンス化し、ちょうどsqlite.YOUR_METHOD()を使用し作成する必要が

public class SharedPreferencesManager { 
    private SQLiteDatabase banco; 
    private Context _context; 

    private final String DATABASE_NAME = "blablabla"; 


    //0 - private (apenas essa aplicação pode usar o banco). 
    //1 - read for all (others apps can read this db). 
    //2 - write for all (others apps can write on this db). 
    private final int DATABASE_ACESS = 0; 
    private a="col_name_1",b="col_name_2",c="col_name_3",table_name="blablabla"; 
    private final String SQL_CREATE_TABLE_BLA = "CREATE TABLE IF NOT EXISTS " + table_name + "(" + 
      a+" INTEGER PRIMARY KEY AUTOINCREMENT," + 
      b+" INTEGER UNIQUE, " + 
      c+" TEXT);"; 

    public SqliteManager(Context context) { 
     this._context = context; 

     this.banco = context.openOrCreateDatabase(DATABASE_NAME, DATABASE_ACESS, null); 

     this.banco.execSQL(SQL_CREATE_TABLE_BLA); 

     insert() 

    } 

    private void insert(int number, String txt){ 
     ContentValues values = new ContentValues(); 
     values.put(this.b, number); 
     values.put(this.c, txt); 

     this.banco.insert(this.table_name, null, values); 
    } 
} 

+0

ありがとう、非常に便利です。私のための作品:D 素敵な一日を! – Padda

関連する問題