Laden...

SQL Editor mit Intellisens

Erstellt von a957m vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.671 Views
A
a957m Themenstarter:in
254 Beiträge seit 2007
vor 16 Jahren
SQL Editor mit Intellisens

Ich bin gerade dabei einen kleinen SQL-Editor zu entwickeln, denn ich in verschiedenen Applikationen einbinden kann. Dabei habe ich eine Textbox für die Eingabe des SQL-Statements und ein DataGrid für das Ergebnis. Das ist recht schnell und einfach zu machen.

Ich würde aber gern die Eingabe des SQL-Statements dahingehend unterstützen, dass ich beim Tippen mit Intellisens vorhandene Tabellen bzw. Spaltenname anzeige. Dabei habe ich folgendene Probleme :

* Gibt es eine Möglichkeit unabhängig von der Datenbank (Access, Oracle ...) die vorhandenen Tabellen und deren Aufbau abzurufen.

* Wie funktioniert das Intellisens Thema ?

Hat mir jemand einen Tip ? Vielen Dank im Voraus.

726 Beiträge seit 2003
vor 16 Jahren

Original von a957m
Wie funktioniert das Intellisens Thema ?

da kannst du dir z.B. den Quellcode von #Develop ansehen
http://www.icsharpcode.net/OpenSource/SD/

A
a957m Themenstarter:in
254 Beiträge seit 2007
vor 16 Jahren

Hallo,

zu dem Intellisens Thema bin ich nicht weitergekommen. Ansonsten bin ich mit meinem SQL-Editor soweit durch. Wenn jemand interesse hat kann ich auch gern die Sourcen hochladen. Vielleicht weiss jemand ja noch ein paar schöne Änderungen.

Das Thema mit den Tabelleninformationen geht folgendermaßen :

DataTable table = con.GetSchema("Tables");

foreach (DataRow r in table.Rows)
{
                string table_type = (string)r["Table_Type"];
                string table_name = (string)r["Table_Name"];
                if ( table_type == "TABLE")
                    listTables.Items.Add(table_name);
 }

Spalteninformationen gehen so :

string[] filter = new string[] { null, null, _table, null };
            DataTable table = con.GetSchema("Columns",filter);

            foreach (DataRow r in table.Rows)
            {
                string col_name = (string)r["COLUMN_NAME"];
                string col_type = (string)r["TYPE_NAME"];
                int col_len = Convert.ToInt32(r["COLUMN_SIZE"]);
                
                listColumns.Items.Add(new ListViewItem(new string[] { col_name, col_type, col_len.ToString() }));
            }
822 Beiträge seit 2005
vor 16 Jahren

Wenn jemand interesse hat kann ich auch gern die Sourcen hochladen.

Stell deinen Editor doch ins Projekte Forum

sbertl