2015-04-29 2 views
0

знаю, что это очень элементарный вопрос, я продолжаю получать этот код ошибки на моем LogCat:Создание SQL-таблицы, SQLite исключение

android.database.sqlite.SQLiteException: возле «select_id»: ошибка синтаксиса (код 1): при компиляции: SELECT_id, имя, пароль FROM GANDALF ORDER BY

Вам действительно нужен совет, попробовав посмотреть, как создать стол для работы в 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

добавить пробелы после SELECT в вашем SQL Command

db.rawQuery("SELECT _id, name, password FROM GANDALF ORDER BY name",null); 
+1

У вас была закрывающая скобка слишком много. Исправлена. Я не знаю, почему, кто-то остановился, когда я исправлял ваш ответ. –

+1

@DerGolem BTW Спасибо за редактирование. –

+1

Мое удовольствие. ;) –

0
SQLiteDatabase db; 

Создать таблицу: db.execSQL ("создать таблицу Гэндальфа" + "(" + "идентификатор" +»INTEGER PRIMARY KEY AUTOINCREMENT, "+" имя "+" текст "+" пароль «+» текст, «+» категория «+» текст «+») »);

Select Query: 
db.rawQuery("select id,name,password from gandalf ORDER BY name",null); 
Смежные вопросы