2017-04-10 95 views
1

我想在項目中創建nd插入數據庫,爲此我使用sqlite但onCreate()方法不工作。我該如何解決這個錯誤? 謝謝。SQLite沒有創建數據庫

錯誤:

android.database.sqlite.SQLiteException:鄰近 「tablehomepage」:語法錯誤(碼1):在編譯:創建tablehomepage(idinteger主鍵AUTOINCREMENT,標題TEXT);

代碼

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

你在你創建表的查詢丟失的幾個空格。您需要在關鍵字之間添加空格。如表,整數等等

使用本:

db.execSQL("create table " + DATABASE_TABLE + "(" 
      + Database.ROW_ID + " integer primary key AUTOINCREMENT, " 
      + Database.ROW_TITLE + " TEXT);");