Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

SQLite Datenbank Problem

Das Thema "SQLite Datenbank Problem" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 23.06.2009, 13:33   #1 (permalink)
Android-Hilfe.de Mitglied

Modell: Samsung Galaxy I7500

Registriert seit: 26.05.2009
Beiträge: 127
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard SQLite Datenbank Problem

Hallo...ich möchte eine Datenbank anlegen und habe dazu auch einige Beispiele gefunden. Leider klappt das nicht so wie es soll. Ich hab mir ne eigene Datenbank-Klasse erstellt und wollte nun die DB erstellen und eine Tabelle erzeugen. Leider geht beim Anlegen der DB schon was schief laut Debugger. Ich dachte mir das so: Zuerst frage ich ob die DB da ist. Wenn nicht muß ich noch einen anderen Schritt machen. Als nächstes, also wenn die nicht da ist, erstelle ich halt die DB. Aber leider klappt das nicht. Exception sagt immer can't not open. Er soll die ja eigentlich erstellen wenn nicht da. Er weiß da mehr?

Code:
public class EDbConnection
{
    private static SQLiteDatabase ourDb = null;
    
    public EDbConnection(){}

    public boolean openConnection()
    {
        try
        {
            ourDb = SQLiteDatabase.openDatabase("testDB",null,SQLiteDatabase.OPEN_READWRITE);
        }
        catch(SQLiteException sqle){return false;}
        catch(Exception e){return false;}
        return true;
    }
    public boolean createDatabase()
    {
        try
        {
            //ourDb = SQLiteDatabase.openOrCreateDatabase("testDB",null);
            ourDb = SQLiteDatabase.openDatabase("testDB",null,SQLiteDatabase.CREATE_IF_NECESSARY);
            ourDb.execSQL("CREATE TABLE IF NOT EXISTS vehicle (Fahrer  TEXT,Team TEXT);");
        }
        catch(SQLiteException sqle)
        {
            String a = sqle.getMessage();
            return false;
        }
        catch(Exception e)
        {
            return false;
        }
        return true;
    }
}
Ich benutze den Emulator wollte ich noch einfügen.
joschika77 ist offline   Mit Zitat antworten
Alt 23.06.2009, 15:09   #2 (permalink)
Android-Hilfe.de Mitglied

Modell: Samsung Galaxy I7500

Registriert seit: 26.05.2009
Beiträge: 127
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard AW: SQLite Datenbank Problem

Geht das mit dem Emulator überhaupt? Oder is die erstellte DB dann immer wieder weg wenn ich den Emu starte? HAt jemand damit Erfahrug?
joschika77 ist offline   Mit Zitat antworten
Alt 23.06.2009, 17:03   #3 (permalink)
Android Guru

Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
Standard AW: SQLite Datenbank Problem

im emu funktioniert die datenbank völlig gleich wie am richtigen händy. das macht keine probleme.

ich mache die verbindungen aber anders.

das activity bzw der context kann dbs erzeugen und öffnen

somit hab ich

ctx.openOrCreateDatabase(NAME, xxx)

versuch dich mal dazu etwas schlau zu machen. vielleicht gehts dann.
__________________
App Entwicklung
Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD )
swordi ist gerade online   Mit Zitat antworten
Alt 24.06.2009, 09:23   #4 (permalink)
Android-Hilfe.de Mitglied

Modell: Samsung Galaxy I7500

Registriert seit: 26.05.2009
Beiträge: 127
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard AW: SQLite Datenbank Problem

Hmmm ...hab ein Beispiel gefunden wo erst versucht wird die DB zu öffnen. Aber die Methode die von Context aufgerufen wird gibt es gar nicht. Also die openDatabase() Methode. Hier mal das Beispiel:

Exploring Androids Embedded Database - CIOL Tutorial

Es muß doch möglich sein zu sehen ob die DB schon da ist oder nicht.
joschika77 ist offline   Mit Zitat antworten
Alt 24.06.2009, 09:32   #5 (permalink)
Android Guru

Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
Standard AW: SQLite Datenbank Problem

das beispiel das du hast, ist glaub ich veraltet. funktioniert mit 1.5 nicht mehr

und er macht es auch über den context

ctx.openDatabase(...)

heißt jetzt

ctx.openOrCreateDatabase()

dabei wird die datenbank erzeugt, falls es sie noch nicht gibt, oder eben nur eine verbindung zu ihr aufgebaut.

in eclispe kannst du in der view ddms die datenbanken zu deinen projekten sehen ( data, data, com.deinprojekt.xxx ) dann siehst du zumindest ob sie angelegt wurde.
__________________
App Entwicklung
Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD )
swordi ist gerade online   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht





Du liest gerade: "SQLite Datenbank Problem" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.