Entwickler-Ecke

Datenbanken (inkl. ADO.NET) - SQLITE


carsten00 - Do 11.02.10 10:28
Titel: SQLITE
Hallo,
habe ein kleines Problem.
Könnte mir jemand kurz und knapp ein Beispiel schreiben, wie ich ein DataGrid befülle mit Daten. Versteh das irgendwie leider nicht. Im folgenden Quellcode ist eine Zeile, die auskommentiert ist. Da würde ich gern ein Datagrid füllen.


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
            SQLiteConnection connection = new SQLiteConnection();
            connection.ConnectionString = datasource;
            connection.Open();

            SQLiteCommand lesen = new SQLiteCommand("SELECT ID, Mac FROM tbl_Mac_Adresse");
            dataGridView2 = lesen.ToString();
            //this.dataGridView2.
            connection.Dispose();
            connection.Close();


Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt


JüTho - Do 11.02.10 10:35

Noch einer, der Code nicht markieren kann und nicht unterscheiden kann zwischen DataGridView und DataGrid.

Zur Sache: Eine Anleitung findest du in OpenBook VC# [http://openbook.galileocomputing.de/visual_csharp] Kap. 25 ff. Die dort verwendeten Sql-Klassen musst du durch deine SQLite-Klassen ersetzen.

Dein bisheriger Versuch enthält so viele Mängel, dass es sich nicht lohnt, detailliert darauf einzugehen. Bitte gehe Schritt für Schritt nach Anleitung vor!

Gruß Jürgen


carsten00 - Do 11.02.10 11:28

bin an dem buch am lesen gerade.

benötige ich bie sqlite auch folgendes?


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
SqlConnectionStringBuilder conBuilder = 
           new SqlConnectionStringBuilder(); 
conBuilder.DataSource = "."
conBuilder.InitialCatalog = "Northwind"
conBuilder.UserID = "Testuser"
conBuilder.Password = "26gf28"
SqlConnection con = 
           new SqlConnection(conBuilder.ConnectionString);


Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt


JüTho - Do 11.02.10 12:40

Bin ich zu blöd, es richtig zu erklären?
user profile iconJüTho hat folgendes geschrieben Zum zitierten Posting springen:
Die dort verwendeten Sql-Klassen musst du durch deine SQLite-Klassen ersetzen.

Bei dir muss es etwa so heißen:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
SQLiteConnectionStringBuilder conBuilder = 
           new SQLiteConnectionStringBuilder(); 
conBuilder.DataSource = ".";    // dies alles nach den SQLite-Anforderungen
conBuilder.InitialCatalog = "Northwind"
conBuilder.UserID = "Testuser"
conBuilder.Password = "26gf28"
SQLiteConnection con = 
           new SQLiteConnection(conBuilder.ConnectionString);

Groß- und Kleinschreibung bei SQLite und die SQLite-Parameter richtig beachten! Jürgen


carsten00 - Do 11.02.10 15:54

Hallo Jürgen,
danke für deine Antworten.
Habe mich mitlerweile weiter informiert. Mein aktuelles ergebnis siehe unten.
Problem hab ich bei der einen Zeile, wo auch ein Kommentar dahinter steht.




C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
           string datasource = "D:\\MACDB.s3db";
            SQLiteConnection connection = new SQLiteConnection();
            connection.ConnectionString = "Data Source=" + datasource;
            connection.Open();

            SQLiteCommand lesen = new SQLiteCommand(connection);
            lesen = new SQLiteCommand(connection);
            lesen.CommandText = "SELECT ID, Mac FROM tbl_Mac_Adresse ORDER BY ID DESC LIMITS 0, 1";

            SQLiteDataReader read = lesen.ExecuteReader();// bei dieser zeole kommt eine Errormeldung"
            textBox10.Text = Convert.ToString(read[0]);
            textBox11.Text = Convert.ToString(read[1]);

            read.Dispose();
            read.Close();
            lesen.Dispose();
            connection.Dispose();
            connection.Close();


Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt


JüTho - Do 11.02.10 16:46

1. Code markieren! (bitte schnell nachholen über den Schere-Button)
2. "eine Fehlermeldung" ist keine ausreichende Beschreibung: Compiler oder Laufzeit? Welche?

Jürgen


carsten00 - Do 11.02.10 16:59

Hallo Jürgen, hab mitlerweil das Problem gefunden und hab den Codefehler ausgebessert. Muss jetzt nur noch schaffen die Daten in ein Datagrid ausgeben zu können. Hoff ich find dazu etwas gutes im Galileo Buch