2017-04-10 9 views
1

私はsqliteを使用していますが、onCreate()メソッドが機能していないため、プロジェクトの中にデータベースを挿入したいと思います。エラーを修正するにはどうすればよいですか?おかげさまで SQLiteはデータベースを作成していません

エラー:

android.database.sqlite.SQLiteException: "tablehomepage" 近い:構文エラー(コード1):、コンパイル中:tablehomepage(idinteger主キーAUTOINCREMENT、タイトルテキスト)を作成します。

コード

public class Database extends SQLiteOpenHelper { 

    public static final String DATABASE_NAME="database"; 
    public static final int DATABASE_VERSİON=1; 
    public static final String DATABASE_TABLE="homepage"; 
    public static final String ROW_ID="id"; 
    public static final String ROW_TITLE="title"; 


    public Database(Context context) { 

     super(context,DATABASE_NAME, null, DATABASE_VERSİON); 
    } 

    @Override 
    public void onCreate(SQLiteDatabase db) { 
     db.execSQL("create table" + DATABASE_TABLE + "(" 
       + Database.ROW_ID + "integer primary key AUTOINCREMENT, " 
       + Database.ROW_TITLE + " TEXT);"); 
    } 

    @Override 
    public void onUpgrade(SQLiteDatabase db, int i, int i1) { 
     db.execSQL("DROP TABLE IF EXİSTS "+ DATABASE_TABLE); 
     onCreate(db); 
    } 

    public void addData(String title){ 

     SQLiteDatabase db = getWritableDatabase(); 
     ContentValues cv = new ContentValues(); 
     cv.put(ROW_TITLE,title.trim()); 
     db.insert(DATABASE_TABLE,null,cv); 
     db.close(); 

    } 


} 

答えて

2

あなたは、テーブルの作成のクエリで複数のスペースが不足しています。あなたはキーワードの間にスペースを追加する必要があります。 TABLE、整数など...

同様

使用この:

db.execSQL("create table " + DATABASE_TABLE + "(" 
      + Database.ROW_ID + " integer primary key AUTOINCREMENT, " 
      + Database.ROW_TITLE + " TEXT);"); 
関連する問題