HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Adatbázis információk lekérdezése


Példaprogram letöltése

8152 bájt

E példában annak járunk utána, hogy az MS SQL szerverben milyen adatbázisok, illetve ezeken belül milyen táblák érhetők el. Az adatbázisok, illetve táblanevek mellett a hozzájuk kapcsolódó adatokat is megjelenítjük.

Első lépésben az elérhető adatbázis neveket listázzuk ki. Ehhez a master adatbázisban található sp_databases tárolt eljárást kell lefuttatni, mely egy olyan táblát ad eredményül, amelyben megtalálható az összes adatbázis neve, alapvető adatai. Az eredményt dataGrid1-ben jelenítjük meg.
    private void button1_Click(object sender, System.EventArgs e)
    {
      ...
      SqlDataAdapter da = new SqlDataAdapter("sp_databases", connection);                      
      da.SelectCommand.CommandType = CommandType.StoredProcedure;
      connection.Open();
      da.Fill(ds);
      dataGrid1.DataSource = ds.Tables[0].DefaultView;
      connection.Close();    
    }
Amikor a felhasználó a dataGrid1-en kattint, akkor keressük elő az aktuálisan kijelölt adatbázisban lévő táblák adatait. Ehhez szintén a master adatbázis egyik tárolt eljárását használjuk fel, névszerint a sp_tables-t. Ez a tárolt eljárás egy olyan táblát ad eredményül, mely tartalmazza a választott adatbázisban lévő táblák adatait.
    private void dataGrid1_CurrentCellChanged(object sender, System.EventArgs e)
    {
      ...
      SqlDataAdapter da = new SqlDataAdapter("sp_tables", connection);                      
      da.SelectCommand.CommandType = CommandType.StoredProcedure;
Hogy melyik adatbázis tábláiról szeretnénk információt kapni, azt a tárolt eljárás table_qualifier paraméterében adhatjuk meg. A dataGrid1 aktuális sorának első oszlopából vesszük ezt az értéket, ahol az adatbázis nevek kerültek felsorolásra.
      da.SelectCommand.Parameters.Add("@table_qualifier", SqlDbType.NVarChar, 128);
      da.SelectCommand.Parameters["@table_qualifier"].Value = dataGrid1[dataGrid1.CurrentRowIndex, 0].ToString();
      connection.Open();
      da.Fill(ds);
A tárolt eljárás által visszaadott táblát a dataGrid2-ben jelenítjük meg.
      dataGrid2.DataSource = ds.Tables[0].DefaultView;
      connection.Close();   
    }

Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2002 évkönyv 590. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |