1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. lol4it, 06.06.2012 #1
    lol4it

    lol4it Threadstarter Neuer Benutzer

    Hallo zusammen,

    ich befasse mich seit einigen wochen mit android applikationen,
    jedoch versteh ich nicht wie ich eine SQLite datenbank auslesen kann und die daten zb in eine listview einfügen. überall finde ich nur tutorials, die beschreiben wie man eine datenbank erstellt und dort etwas einträgt..

    ich hab bereits die datenbank.
    wo muss ich sie reinkopieren?
    wie frage ich sie mit java ab?

    vielen dank für die hilfe im voraus, ich bin langsam am verzweifeln.

    lol4it

    EDIT: select name from namensliste where ort="Berlin"
    würde reichen. einfach eine simple abfrage
     
    Zuletzt bearbeitet: 06.06.2012
  2. Sentenza, 06.06.2012 #2
    Sentenza

    Sentenza Erfahrener Benutzer

    Hi, ich habe mich da auch vor kurzem durchgefuchst. Mir hat das folgende Wikibook viel geholfen. Wichtig ist die abgeleitete Klasse von SQLiteOpenHelper, damit erzeugt man die Datenbank und bekommt den Zugriff. (die Empfehlungen, die Parameter aus XML-ressourcen zu laden, haben mich am Anfang eher verwirrt, braucht man nicht, würde ich weglassen. Das ist eher sinnvoll wenn man dann wirklich ein Projekt umsetzt). Dann solltest du dir die Methoden von SQLiteDatabase anschauen, die du brauchst, ich weiß auch nicht im Detail was es da alles gibt, für mich waren bislang .execSQL, .query, .insert besonders nützlich und hilfreich.

    Zusätzlich nich eine längere Anleitung, auf die wohl jeder Anfänger derzeit früher oder später stößt, habe ich mir bislang allerdings nur teilweise angesehen, aber vielleicht nützt sie dir etwas.
     
    Zuletzt bearbeitet: 06.06.2012
  3. 19sheriff93, 07.06.2012 #3
    19sheriff93

    19sheriff93 Junior Mitglied

    Habe zurzeit genau das gleiche problem, allerdings noch keine wirkliche lösung... :(
     
  4. Sentenza, 07.06.2012 #4
    Sentenza

    Sentenza Erfahrener Benutzer

    Wie gesagt, Wikibook lesen... aber gut, hier ein Beispiel. Meine App (noch nicht fertig) soll Termine verwalten, und hier werden die Termine aus der SQLite Datenbank gelesen und angezeigt:

    Code:
            SQLiteOpenHelper db = new TerminDatabaseHelper(this);
            SQLiteDatabase verbindung = db.getReadableDatabase();
            Cursor tabTermin = 
                verbindung.query("termine", 
                                 new String[] {"name","date"}, 
                                 "", 
                                 null, 
                                 null, 
                                 null, 
                                 "date asc,name");
            
            TerminArray = new View[tabTermin.getCount()];
            tabTermin.moveToFirst();
            for (int i = 0; i < tabTermin.getCount(); i++) {
                String tname = tabTermin.getString(0);
                long tdate = tabTermin.getLong(1);
                tabTermin.moveToNext();
                TerminArray[i] = terminAnzeigen(tname,tdate);
            }
    Die Query anweisung entspricht im Prinzip einem Statement der Art "SELECT name,date FROM termine ORDER BY date asc,name". Wie genau Query zu gebrauchen ist, zeigt euch Eclipse an - einfach mit dem Mauszeiger drauf zeigen. Wie ihr eure SQLiteOpenHelper Klasse ableiten könnt (so wie meine TerminDatabaseHelper) erfahrt ihr im Wikibook.
     
  5. Tom299, 08.06.2012 #5
    Tom299

    Tom299 Android-Experte

    Ich machs immer ungefähr so:

    In meiner DBHelper-Klasse habe ich eine open-Methode, die ich aber nur noch intern nutze und z.B. eine query-Methode zum abfragen:
    Code:
        private static String DB_PATH = "/data/data/de.test/databases/";
        public static String DB_NAME = "my.test.db";
    
        public void openDataBase() throws SQLException{
        	//Open the database
            String myPath = DB_PATH + DB_NAME;
        	dataBase = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READWRITE);
        }
    
    	public Cursor executeQuery(String sql) {
    		if (dataBase == null) {
    			openDataBase();
    		}
    		else if (!dataBase.isOpen()) {
    			openDataBase();
    		}
    		return dataBase.rawQuery(sql, null);
    	}
    
    Wie man sieht kann ich meine Query direkt ausführen, die DB wird automatisch geöffnet, sollte sie noch nicht geöffnet sein.

    Die Abfragen aus der Activity gehen dann ganz einfach:
    Code:
    String sql = "Select * from user"
    
    		System.out.println(sql);
    
    		Cursor c = dbHelper2.executeQuery(sql);		
    		if (c != null) {
    			listUser.clear();
    			if (c.moveToFirst()) {
    				while (!c.isAfterLast()) {
    					String sName = c.getString(c.getColumnIndex(User.DB_NAME));
    					}
    
    					// User
    					User user = new User();
    					user.setName(sName);
    					
    					listUser.add(user);
    					
    					c.moveToNext();
    				}
    			}
    			c.close();			
    		}	
    
    
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[OFFEN] Komplette SQLite Datenbank verschlüsseln Android App Entwicklung Gestern um 12:02 Uhr
[OFFEN] SQLITE insert gibt negative id zurück Android App Entwicklung Montag um 21:16 Uhr
[ERLEDIGT] Mehrere Verzeichnisse abfragen Android App Entwicklung 02.07.2017
[ERLEDIGT] In SQLite DB auf nächsten/vorherigen Datensatz zugreifen Android App Entwicklung 23.03.2017
[RÜCKMELDUNG FEHLT] SimpleDateFormat "if" abfrage für Tag oder Nacht Android App Entwicklung 12.03.2017
SQLite asynchron benutzen Android App Entwicklung 26.02.2017
SQLite - Idee 'zentrale Datenbank' theoretisch möglich (und ratsam)? Android App Entwicklung 21.02.2017
Wie realisiere ich eine zeitgesteuerte Berechnung und die Anzeige von PDF's Android App Entwicklung 21.02.2017
SQL-Abfrage über zwei Tabellen realisieren Android App Entwicklung 12.02.2017
Permission Abfrage funktioniert nicht mehr Android App Entwicklung 15.01.2017

Users found this page by searching for:

  1. android SQlite abfrage

    ,
  2. sqlite datenank abfrage

    ,
  3. sqlite abfragen

    ,
  4. sqlite android datenbank lesen,
  5. android sql datenbank auslesen,
  6. abfrage in sqlite,
  7. android sqlite datenbank abfrage,
  8. sqlite android datenbank ,
  9. sqlite datenbank abfragen in java