创建SQL表,SQLite异常

时间:2015-04-29 10:30:03

标签: android sqlite

知道这是一个非常基本的问题,我继续在我的logcat上获取此错误代码:

android.database.sqlite.SQLiteException:near“SELECT_id”:语法错误(代码1):,同时编译:SELECT_id,name,password FROM GANDALF ORDER BY name

真的需要一些建议,试过看其他创建sqlite表的帖子但是无法解决它。

     public void onCreate(SQLiteDatabase db) {
     db.execSQL("CREATE TABLE gandalf " +
            "(_id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,password TEXT, category TEXT);");

}

试试这个

     db.execSQL("CREATE TABLE books ( " +
                "id INTEGER PRIMARY KEY AUTOINCREMENT, " + 
                "name TEXT, "+
                "password TEXT, "+
                "category TEXT)");

datahelper的完整代码     公共类DataHelp扩展了SQLiteOpenHelper {

private static final String dbname = "pass.db"; 
private static final int ver = 1;

public DataHelp(Context context) {
    super(context, dbname, null, ver);
    // TODO Auto-generated constructor stub
}

@Override
public void onCreate(SQLiteDatabase db) {
     db.execSQL("CREATE TABLE gandalf " +
            "(_id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,password TEXT, category TEXT);");

}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // TODO Auto-generated method stub
}

public void insertDB(String name, String pass){
    SQLiteDatabase db = this.getWritableDatabase();
    ContentValues cv = new ContentValues();
    cv.put("Name", name);
    cv.put("Pass", pass);
    db.insert("db", null, cv);
    db.close();
}

public Cursor getAll(){
    return (getReadableDatabase().rawQuery("SELECT_id, name," +
            "password FROM GANDALF ORDER BY name",null));
}

public String getName(Cursor c){
    return(c.getString(1));
}

 public String getPass(Cursor c) {
        return(c.getString(2));
      }

 public String getCat(Cursor c) {
        return(c.getString(3));
      }

}

2 个答案:

答案 0 :(得分:2)

SELECT命令

中添加SQL后的空格
db.rawQuery("SELECT _id, name, password FROM GANDALF ORDER BY name",null);

答案 1 :(得分:0)

SQLiteDatabase db;

创建表格:      db.execSQL("创建表gandalf" +"(" +" id" +" INTEGER PRIMARY KEY AUTOINCREMENT," +&# 34;姓名" +"文字," +"密码" +"文字," +"类别" +&#34 ; text" +")");

Select Query:
db.rawQuery("select id,name,password from gandalf ORDER BY name",null);