SQL tai Structured Query Language on vakiokieli relaatiotietokantojen käsittelyssä. Sitä voidaan käyttää suorittamaan tehtäviä, kuten päivittämään tietokannan tietoja tai hankkimaan tietoja tietokannasta. Joitakin yleisiä SQL:ää käyttäviä relaatiotietokannan hallintajärjestelmiä ovat: Oracle, Sybase, Microsoft SQL Server, Access jne. Vaikka useimmat tietokantajärjestelmät käyttävät SQL:ää, useimmilla niistä on myös omat laajennukset, joita käytetään yleensä vain heidän järjestelmässään. Tavallisia SQL-komentoja, kuten "Valitse", "Lisää", "Päivitä", "Poista", "Luo", "Poista" voidaan kuitenkin käyttää lähes kaikkeen, mitä tietokannan kanssa tarvitsee tehdä. Tämän päivän aihe keskittyy sarakkeiden nimien ja tietotyyppien saamiseen SQL-palvelimeen.
Sarakkeiden nimien ja tietotyyppien saaminen SQL Serverissä
SELECT c.name AS column_name,
t.Name AS data_type,
c.max_length,
c.precision
FROM sys.columns c
INNER JOIN sys.types t ON c.user_type_id = t.user_type_id
WHERE c.object_id = OBJECT_ID('YourTableName')
Tämä esimerkkikoodipala palauttaa luettelon sarakkeista ja niihin liittyvistä tietotyypeistä tietylle annetulle taulukolle "TaulukonNimi". Sukeltaaksemme tähän tarkemmin, ymmärrämme ensin, mitä kukin kyselyn osa saavuttaa.
Koodin ymmärtäminen
SELECT-lauseke: Tämä pohjimmiltaan valitsee/kerää tarvittavat tiedot. Meidän tapauksessamme keräämme sarakkeen nimen, tietotyypin, enimmäispituuden ja tarkkuuden.
FROM-lausunto: Tämä määrittää, mistä tiedot kerätään. Ohjaamme sen 'sys.columns' -taulukkoon, johon tallennetaan tiedot sarakkeista.
INNER JOIN -lausunto: Tätä käytetään kahden tai useamman taulukon rivien yhdistämiseen niiden välisen sarakkeen perusteella. Tässä vastaava sarake on user_type_id.
WHERE-lauseke: Tätä käytetään tietueiden suodattamiseen, sitä käytetään vain ne tietueet, jotka täyttävät tietyn ehdon. Tässä ohjaamme sen etsimään "TaulukonNimi".
Samankaltaiset toiminnot ja kirjastot
On muitakin tapoja saada samat tiedot. Esimerkiksi käyttämällä INFORMATION_SCHEMA.COLUMNS. Tämä on SQL Serverin taulukko, joka tallentaa metatiedot kaikista tietokannan sarakkeista.
SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'YourTableName'
Toinen tapa on käyttää sp_help tallennettua menettelyä. Se palauttaa tietoja tietokantaobjektista, käyttäjän määrittämästä tietotyypistä tai tietotyypistä.
EXEC sp_help 'YourTableName';
Molemmat menetelmät tuottavat saman tiedon kuin ensimmäinen menetelmä, mutta ne on rakennettu hieman eri tavalla eri tarpeiden ja mieltymysten mukaan. Yhteenvetona voidaan todeta, että nämä menetelmät auttavat kehittäjiä hakemaan tärkeitä tietoja tietokantasarakkeista ja niiden tietotyypeistä SQL Serverissä.
