2011-01-24 11 views
4

データベースを一度作成しても変更はされませんが私はのonCreate()にいるときに私はsqlite onCreate()問題データベースが一度作成され、変更されませんが、onCreate()にあるときにデータを作成できません

public class EventsData extends SQLiteOpenHelper { 
     private static final String DATABASE_NAME = "events.db"; 
     private static final int DATABASE_VERSION = 1; 


     public EventsData(Context ctx) { 
      super(ctx, DATABASE_NAME, null, DATABASE_VERSION); 
     } 

     @Override 
     public void onCreate(SQLiteDatabase db) { 

      db.execSQL("CREATE TABLE " + TABLE_NAME + " (" + _ID 
       + " INTEGER PRIMARY KEY AUTOINCREMENT, " + TIME 
       + " TEXT NOT NULL," + TITLE + " TEXT NOT NULL);"); 

    //This doesn't work.. 
      db.execSQL("INSERT INTO"+TABLE_NAME+"VALUES(null, 'hello', 'android');"); 
     } 

     @Override 
     public void onUpgrade(SQLiteDatabase db, int oldVersion, 
      int newVersion) { 
      db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME); 
      onCreate(db); 
     } 

    } 
+0

あなたのデータベースを保持する仮想クラスを作成し、データベースの起動、変更、保存などのメソッドを使用します。そのクラスをグローバル変数で初期化し、必要に応じてそのクラスのメソッドを呼び出します。このようにして、データベースをより細かく制御することもできます。 – Mascarpone

+0

whats ur prob?どのようなエラーが表示されますか?plsはlogcatにエラー –

答えて

4

...ライン

db.execSQL("INSERT INTO"+TABLE_NAME+"VALUES(null, 'hello', 'android'); 

のデータを作成することはできませんTABLE_NAME周りのスペースが不足しています。この行を正確に実行すると動作しません。

+0

を貼り付けました。あなたはスペースのために適切でした...私は不注意でした...ありがとう! – stelios

0

1>データベースを開いていませんか?

2>また、などのOpenDatabase、のcreateTable、deleteTable、insertValues、INSERT文

databaseDb.execSQL(TABLE_NAME値。INSERT INTOため

サンプル構文などのユーティリティメソッドを持つことになり、別のクラスを作成します( 'Chiranjib'、 'Banerjee'、1););

+0

execSQL()のおかげで! – stelios

関連する問題