Witam piszę aplikację na androida (kalendarz przechowujacy dane na temat terminu wykonania konkretnej usługi). Napisałem klase BazaDanych która rozszerza klase SQLiteOpenHelper i metodzie oncreate tworzę tabele i przy tworzeniu drugiej tabeli wywala mi błąd. Poniżej zamieszczam kod metody oncreate:
@Override
public void onCreate(SQLiteDatabase baza) {
super.onOpen(baza);
baza.execSQL("PRAGMA foreign_keys=ON;");
baza.execSQL("CREATE TABLE "+TABELA_USLUGA+"("+IDUSLUGA+" INTEGER PRIMARY KEY, "+NAZWA+" TEXT);");
baza.execSQL("CREATE TABLE "+TABELA_PRACOWNIK+"("+IDPRACOWNIK+" INTEGER PRIMARY KEY, "+USLUGA_ID+" INTEGER, FOREIGN KEY("+USLUGA_ID+") REFERENCES "+TABELA_USLUGA+"("+IDUSLUGA+"), "+IMIE+" TEXT,"+NAZWISKO+" TEXT);");
baza.execSQL("CREATE TABLE "+TABELA_TERMIN+"("+IDTERMIN+" INTEGER PRIMARY KEY AUTOINCREMENT, "+PRACOWNIK_ID+" INTEGER, FOREIGN KEY("+PRACOWNIK_ID+") REFERENCES "+TABELA_PRACOWNIK+"("+IDPRACOWNIK+"), "+TYTUL+" TEXT, "+GODZ_START+" TEXT, "+GODZ_STOP+" TEXT, "+OPIS+" TEXT);");
}
Dodatkowo sworzyłem pomocniczą klasę zawierająca nazewnictwo.:
public interface BazaDane extends BaseColumns {
// Kolumny w bazie danych, tabela termin
public static final String TABELA_TERMIN = "Termin";
public static final String IDTERMIN = "idTermin";
public static final String PRACOWNIK_ID = "idPracownik" ;
public static final String TYTUL = "Tytul" ;
public static final String GODZ_START = "Godz_start" ;
public static final String GODZ_STOP = "Godz_stop" ;
public static final String OPIS = "Opis" ;
// Kolumny w bazie danych, tabela pracownik
public static final String TABELA_PRACOWNIK = "Pracownik" ;
public static final String IDPRACOWNIK = "idPracownik";
public static final String USLUGA_ID = "idUsluga" ;
public static final String IMIE = "Imie" ;
public static final String NAZWISKO = "Nazwisko" ;
// Kolumny w bazie danych, tabela usluga
public static final String TABELA_USLUGA = "Usluga" ;
public static final String IDUSLUGA = "idUsluga";
public static final String NAZWA = "Nazwa" ;
}
Zamieszczam jeszcze to co wyrzuca mi Logcat:
Failure 1 (near "Imie": syntax error) on 0x38f380 when preparing 'CREATE TABLE Pracownik(idPracownik INTEGER PRIMARY KEY, idUsluga INTEGER, FOREIGN KEY(idUsluga) REFERENCES Usluga(idUsluga), Imie TEXT,Nazwisko TEXT);'.
android.database.sqlite.SQLiteException: near "Imie": syntax error: CREATE TABLE Pracownik(idPracownik INTEGER PRIMARY KEY, idUsluga INTEGER, FOREIGN KEY(idUsluga) REFERENCES Usluga(idUsluga), Imie TEXT,Nazwisko TEXT);
Proszę o jakieś podpowiedzi jak wklejam zapytanie prosto do mysql to działa.