Darbas su duomenų bazėmis yra tiesiogiai susijęs sukeitimo lenteles ir jose esančius duomenis. Tačiau prieš pradedant veiksmus reikia sukurti lenteles. Norėdami automatizuoti šį procesą, yra speciali SQL funkcija - "CREATE TABLE".
Pirmas dalykas!
Prieš pradedant kurti lenteles naudojant MS SQL komandą „CREATE TABLE“, verta pasidomėti, ką reikia žinoti prieš naudojant funkciją.
Visų pirma, jūs turite sugalvoti lentelės pavadinimą -ji turi būti unikali, palyginti su kitomis duomenų bazėje esančiomis medžiagomis, ir laikytis kelių taisyklių. Pavadinimas turi prasidėti raide (a-z), po kurios gali sekti bet kokios raidės, skaičiai ir apatiniai brūkšniai, o gaunama frazė neturi būti rezervuotas žodis. Lentelės pavadinimo ilgis neturi viršyti 18 simbolių.
Nusprendę dėl pavadinimo, turėtumėte tobulėtistruktūra: sugalvokite stulpelių pavadinimus, apgalvokite juose naudojamų duomenų tipą ir kokius laukus reikia užpildyti. Čia verta nedelsiant apibrėžti užsienio ir pirminių raktų laukus, taip pat galimus duomenų reikšmių apribojimus.
Likusius lentelės niuansus galima nesunkiai pataisyti, todėl lentelės kūrimo etape jie gali būti ne iki galo apgalvoti.
Sintaksė
Sukūrę lentelės struktūrą, galite tęstijo sukūrimas. Tai gana paprasta padaryti naudojant SQL funkciją „CREATE TABLE“. Jame vartotojas turi nurodyti lentelės pavadinimą ir anksčiau sugalvotų stulpelių sąrašą, nurodydamas kiekvieno iš jų tipą ir pavadinimą. Funkcijos sintaksė yra tokia:
CREATE TABLE lentelės_pavadinimas
({stulpelio_pavadinimo duomenų tipas [NUMATYTOJI išraiška] [stulpelio_ribojimas]… | lentelės_apribojimas}
[, {stulpelio_pavadinimo duomenų tipas [NUMATYTOJI išraiška] [stulpelio_ribojimas] ... | table_constraint}] ...)
Funkcijos konstrukcijoje naudojami argumentai reiškia:
- lentelės_pavadinimas – lentelės pavadinimas
- stulpelio_pavadinimas – stulpelio pavadinimas
- duomenų tipas – šiame lauke naudojamas duomenų tipas
- DEFAULT yra numatytoji išraiška, naudojama stulpelyje.
Taip pat galima naudoti dar du funkcijos argumentus:
- colum_constraint – stulpelio parametrai
- table_constraint – lentelės parametrai
Juose vartotojas gali nurodyti lentelės pildymo apribojimus ar sąlygas, reikalingus darbui.
Lentelių kūrimo ypatybės
Rašant užklausą su SQL funkcija „CREATELENTELĖ ", kartais reikia nustatyti laukų pildymo taisykles. Norėdami tai padaryti, turite pridėti specialius funkcijos atributus, kurie apibrėžia tam tikrą sąlygų rinkinį.
Norėdami nustatyti, ar ląstelė galiyra tuščia reikšmė, nurodžius stulpelio pavadinimą ir tipą, reikia parašyti vieną iš raktinių žodžių: NULL (gali būti tuščios reikšmės) arba NOT NULL (laukelis turi būti užpildytas).
Kuriant lentelę daugeliu atvejųbūtina suvienodinti kiekvieną įrašą, kad nebūtų dviejų vienodų. Tam dažniausiai naudojamas eilučių numeravimas. O kad vartotojas nereikėtų žinoti paskutinio lentelės skaičiaus, funkcijoje „CREATE TABLE“ pakanka nurodyti pirminio rakto stulpelį, po atitinkamo lauko įrašant raktinį žodį „Pirminis raktas“. Dažniausiai lentelės yra sujungtos viena su kita pirminiu raktu.
Norėdami pateikti sujungimą su pirminiu raktu, naudokitesvetimo rakto turtas "REGN KEY". Nurodydami šią stulpelio ypatybę, galite užtikrinti, kad šiame lauke būtų reikšmė, atitinkanti vieną iš tų, kurios yra tos pačios arba kitos lentelės pirminio rakto stulpelyje. Tokiu būdu galima užtikrinti duomenų nuoseklumą.
Pateikti atitikties patikrinimątam tikras rinkinys ar apibrėžimas turėtų naudoti atributą CHECK. Funkcijos argumentų sąraše jis rašomas paskutinis ir turi tam tikrą loginę išraišką kaip asmeninį parametrą. Jis gali būti naudojamas apriboti galimų reikšmių sąrašą, pavyzdžiui, lentelės lauke "Lytis" naudojant tik raides "M" ir "Ж".
Be pateiktųjų, SQL funkcija „CREATE TABLE“ turi daug daugiau specifinių atributų, tačiau jie praktiškai naudojami daug rečiau.
Pavyzdžiai
Norint visiškai suprasti funkcijos principą, verta praktiškai pagalvoti, kaip veikia CREATE TABLE (SQL). Toliau pateiktame pavyzdyje sukuriama lentelė, parodyta paveikslėlyje:
KURTI LENTELĘ Individualizuotos
(ID CHAR (10) NOT NULL Pirminis raktas,
Custom_name CHAR (20),
Custom_address CHAR (30),
Custom_city CHAR (20),
Custom_Country CHAR (20),
ArcDate CHAR (20))
Kaip matote, galimo reikšmės nebuvimo langelyje parametro (NULL) galima praleisti, nes jis naudojamas pagal numatytuosius nustatymus.