2016-12-14 73 views
0

我無法創建表格。它顯示數據庫已創建,我也可以插入一行,但不創建表。無法在android上的sqlite數據庫中創建表格

public class DatabaseOperations extends SQLiteOpenHelper { 

public static final int Database_version = 2; 

public static final String Tag = DatabaseOperations.class.getSimpleName(); 

private static final String SQL_CREATE_ENTRIES = 
     "CREATE TABLE " + TableData.TableInfo.TABLE_NAME + " (" + 
       TableData.TableInfo.USER_ID + " INTEGER PRIMARY KEY," + 
       TableData.TableInfo.USER_PASS +" TEXT "+ "," + 
       TableData.TableInfo.USER_EMAIL +" TEXT "+ ");"; 

public DatabaseOperations(Context context) { 
super(context, TableData.TableInfo.DATABASE_NAME, null,Database_version); 
    Log.d("Tag", "Database created"); 
} 

@Override 
public void onCreate(SQLiteDatabase sdb) { 
    sdb.execSQL(SQL_CREATE_ENTRIES); 
    Log.d("Tag", "Table created"); 

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

} 

public void putInformation(DatabaseOperations drop, String name, String pass, String email) { 
    SQLiteDatabase SQ = drop.getWritableDatabase(); 
    ContentValues cv = new ContentValues(); 
    cv.put(TableData.TableInfo.USER_ID, name); 
    cv.put(TableData.TableInfo.USER_PASS, pass); 
    cv.put(TableData.TableInfo.USER_EMAIL, email); 
    long k = SQ.insert(TableData.TableInfo.TABLE_NAME, null, cv); 
    Log.d("Tag", "inert a row"); 
} 

public Cursor getInformation(DatabaseOperations dop) { 
    SQLiteDatabase SQ = dop.getReadableDatabase(); 
    String[] coloumns = {TableData.TableInfo.USER_ID, TableData.TableInfo.USER_PASS, TableData.TableInfo.USER_EMAIL}; 
    Cursor CR = SQ.query(TableData.TableInfo.TABLE_NAME, coloumns, null, null, null, null, null); 
    return CR; 
} 
} 
+1

你的sql staement出現錯誤'「);」;'。刪除第一個';' – Aelop

+0

我不認爲這是問題所在。第一個分號用於顯示SQL語句的結尾,所以它是正確的。 –

+0

';'在SQLite語句中只是**無用**(因爲沒有多個語句將被處理),**但不是有害的**。 –

回答

0

您錯過了USER PASS type中的逗號。卸載該應用程序並在每次向sqlite數據庫添加新內容時重新安裝它,因爲表結構已更改。所以您需要重新安裝新應用程序。

的代碼應該是這樣的

私有靜態最後字符串SQL_CREATE_ENTRIES = 「CREATE TABLE」 + TableData.TableInfo.TABLE_NAME + 「(」 + TableData.TableInfo.USER_ID + 「INTEGER PRIMARY KEY,」 + TableData.TableInfo.USER_PASS +「TEXT」,「+」,「+ TableData.TableInfo.USER_EMAIL +」TEXT「+」)「;

相關問題