Pridať jazyk obmedzenia SQL

Tento jazyk, ktorý sa používa na extrakciu a správu DBMS v RDMS, je miesto na ukladanie relačných dát, ktoré majú niekoľko riadkov a stĺpcov. SQL vám umožňuje prijímať a spracovávať tabuľky v RDMS. V SQL môžete vytvoriť procedurálne programy s iteráciami a podmienkami. Môžete pristupovať k databáze umiestnením príkazov rovnakým spôsobom ako v PHP alebo pomocou vizuálneho softvéru, ako napríklad phpMyAdmin bežiaceho na serveri alebo počítači pomocou XAMPP, ako aj mnohých iných lokálnych serverových programov. Takmer všetky moderné systémy pre správu databáz sú založené na tomto jazyku.

Historické predpoklady SQL

Skratka SQL znamená "Štruktúrovaný jazyk vyhľadávania", ktorý rozumie prakticky každému DBMS. Bola vyvinutá spoločnosťou IBM v sedemdesiatych rokoch s pôvodným menom SEQUEL a jej pravé meno sa datuje do osemdesiatych rokov. SQL bol certifikovaný medzinárodnou organizáciou ISO. Tu sú hlavné kroky v tomto procese:


  • štandard ANSI v roku 1986;
  • ISO (SQL1) v roku 1987, revidovaný v roku 1989;
  • ISO (SQL2) v roku 1992;
  • SQL3 bol vytvorený v roku 1999 spoločnosťami ANSI a ISO.
  • Norma ISO SQL 2006 sa používa na správu súborov XML, ako napríklad import údajov XML do databázy alebo exportovanie obsahu XML a obmedzenia jazyka SQL. Napriek štandardizácii ISO skutočné používanie rôznych redaktorov DBMS má rozdiely v súvislosti s:
  • detailmi syntaxe;
  • písanie príkazov;
  • presná práca riadiacich orgánov;
  • zavedenie nových typov údajov (obrázky, animácie, video, hypertextové odkazy)a tak ďalej).
  • Bez ohľadu na softvéri, ktorý používate MySQL (alebo mariadb), PostgreSQL, Oracle, NoSQL, ako Cassandra - rovnaké syntaxe s drobnými rozdielmi. Stručne povedané, existuje iba jeden jazyk SQL, ale každý editor DBMS implementuje svoj vlastný dialekt. "Slovník", ktorý vám umožní prepínať z jedného dialektu do iného nazýva ODBC (Open DataBase Connectivity). Bola vytvorená v Microsoft 1993 pre obmedzenie SQL.


    Funkcie programovacieho jazyka

    SQL je najpopulárnejší medzi počítačovými jazykmi spojenými s databázovými systémami. Najsľubnejšie smery označujú štruktúrované dopyty. Predmetom viacerých medzinárodných štandardizácií, z ktorých prvý sa týka roku 1986 a stále sa rozvíja. Realizácia zodpovedá relačnej algebre, ale často sa odchyľuje od tradičných výpočtov. V implementáciách zvyčajne ignorovať rozdiel medzi veľkými a malými písmenami, okrem riadky. Obmedzenie Ms SQL umožňuje:
  • vykonávať operácie relačnej algebry;
  • upravovať kópie;
  • upravte vzťah v databáze.
  • Expresia integrity

    Ide o návrh, ktorý obmedzuje zmenu tabuľky vykonané na prianie klienta tak, aby údaje zodpovedajú očakávaným výsledkom. Sú uložené pri vytváraní:
  • Obmedzenia SQL.
  • DEFAULT.
  • NIE NULL.
  • SINGLE.
  • CHECK.
  • SQL definuje predvolené, keď je pole báza nie je obsiahnutá cez návrhy predvolené. Zjednodušuje tvorbu tabuliek a zaisťuje, že pole nie je prázdne. Vo vetve DEFAULT musí byť priradená hodnota.
    Môže to byť jeden z nasledujúcich typov:
  • digitálna konštanta;
  • alfanumerická konštanta (riadok);
  • Kľúčové slovo používateľa USER (používateľské meno);
  • kľúčové slovo NULL;
  • kľúčové slovo CURRENT_DATE (dátum vstupu);
  • kľúčové slovo CURRENT_TIME (vstupná doba);
  • kľúčové slovo CURRENT_TIMESTAMP (dátum a čas vstupu).
  • Typy údajov v databázach

    V syntaxe napríklad type_field1 field_type2 atď. Zadajte typ údajov, ktoré budú obsahovať príslušné pole. V zásade sa toto pravidlo používa na ich prenos do systému tak, aby prideľoval príslušný priestor v závislosti od veľkosti dát. Systém nebude prideľovať rovnaký priestor pre riadok ako pre celé číslo. V phpMyAdmin sa pri vytváraní tabuľky zobrazí zoznam prijatých typov v rozbaľovacom zozname.

    Typ údajov



    typ


    [d])



    číslo n číslica [d (neobyazatelno) po desyatychnoy bod]



    SMALLINT



    , 16-bitové celé číslo so znamienkom



    celé číslo



    , 32-bitové celé číslo so znamienkom

    (76 )
    plaváka



    počet plávajúce bod



    Dátum



    formát dátumu dd /mm /rr



    Čas



    a



    TIMESTAMP



    Dátum a čas



    CHAR (l)



    Riadok symbolov pevnej dĺžky l (n
    Tu je príklad: CREATE TABLE table_name (stĺpec1 typ_champ1, stĺpec2) Type_champ2, colonne3 Type_champ3).

    atribúty obmedzenia SQL

    Aby bolo možné vytvoriťvzťah, musíte poznať obmedzenia integrity. Na tento atribút sa vzťahujú nasledujúce obmedzenia:
  • predvolená hodnota pre tento atribút je predvolená hodnota;
  • nie je null - prázdny alebo neznámy (nula) pre tento parameter je zakázaný;
  • null - tento atribút je prípustné prázdne alebo neznáme (nula (predvolené)
  • unikátna - všetko je hodnota tohto atribútu musí byť unikátne;
  • Kontrola (TE) - te test musí byť splnená pre tento parameter
  • pimary kľúč - to je primárny kľúč atribút (SQL jedinečnosti môže nastať raz) a nezahŕňa null jedinečné;
  • odkazy ta [(v)] - táto voľba je existujúci hodnota atribútu v, ktorý je povinný jedinečný, tabuľka tá, ak je to nie je uvedené, že je primárny kľúč, tá
  • odkazy ta [(v)] na zmazanie kaskády - podobne ako v predchádzajúcej obmedzenia, okrem toho, ak je odstránená tá, inštancie, ktorá sa odvoláva na to v tejto tabuľke je automaticky odstránený aj
  • Tieto obmedzenia pridať obmedzenia SQL vzťahuje na jeden alebo viacero atribútov, alebo do tabuľky :.
  • jedinečné (at1, atN) - všetky hodnoty v tejto množine atribútov musia byť jedinečné;
  • kontrola (te) - skúška musí platiť pre túto sadu parametrov.
  • Vytváranie vzťahov

    Vzťah SQL je tiež označovaný ako tabuľka. Vytvorenie vzťahu je vyjadrené v SQL pomocou tabuľky pomocníka.
    Dieťa tabuľka prázdna: obsahuje atribúty (stĺpce), definovanej kedy bola vytvorená, ale žiadny záznam (riadok). Je možné a vhodné špecifikovať obmedzenie integrity atribútov.
    Môžu sa tiež povoliť obmedzenia, aby sa ľahšie identifikovali. V opačnom prípade sa zobrazí názov, ktorý automaticky poskytuje databáza.

    Vytvorenie tabuľky

    NOT NULL kľúčové slovo umožňuje určiť, ktoré je nutné zadať do poľa, bude táto databáza odmietne vložiť riadky, ktoré nie sú definované pole, ktoré obsahuje návrh na NOT NULL. Môžete skontrolovať pole pomocou CHECK (), má logickú podmienku pre hodnotu medzi zátvorkami. Ak sa táto hodnota líši od NULL, systém DBMS vykoná kontrolu pomocou logických podmienok pomocou príkazu SELECT.

    ponúkajú jedinečné pole vám umožňuje kontrolovať a zaistiť stĺpce líšia. Kľúčové slovo CONSTRAINT priradí názov obmedzenia tak, aby fungoval, keď daná veta nebola overená. Ak nie je zadané klauzule CONSTRAINT, názov bude poskytnutý DBMS ľubovoľne. Je však nepravdepodobné, že by to bolo jasné, a to možno len ťažko realizovať vôbec kedy dôjde k chybe celistvosť.

    Príklad dátovému meniť tabuľky obmedzenia

    Pre ilustráciu nasledovné poradie, zvážte tabuľka "produkt":

    id hodnota (ID)



    nom (názov )



    mačka? gória (kategória)



    akcií (akcie)



    prix (cena )



    1



    počítača



    pre spracovanie dát


    ,
    5



    , 950



    2



    klávesnice
    (192 )

    pre spracovanie dát



    32



    35



    3 (207 )


    , myší



    vzhľadom na ošetrenie s



    16



    30



    4



    ceruzka



    Dodávka


    (238 ) 147



    2

    pridať väzby operátor SQL sa môže pripojiť niekoľko slov v dotaze. Zachovaní rovnakého stola ako predtým filtrovať iba počítačové produkty sú takmer chýba skladom (menej ako 20 titulov), spustite nasledujúci dotaz:
    SELECT * FROM produitWHERE mačka Gorie =, 'Informatique a akciách (246?



    ) Sklad (podiely)



    , cena (cena)



    1



    počítača



    pre spracovanie dát



    , 5



    , 950


    (286 ) 3



    , myší



    pre spracovanie dát



    16



    30

    k filtrovanie dát a majú len informácie o výrobku "počítač" alebo "klávesnice" by mal urobiť ďalšie vyhľadávanie: SELECT * FROM produitWHERE nom = 'ordinateur' OR nom = ' clavier, Tento jednoduchý požiadavka vráti nasledujúce výsledky:

    id hodnota (ID)



    nom (názov)



    cat ? gória (kategória)



    vozidiel (podiely)



    , cena (cena)



    1



    počítača



    pre spracovanie dát



    , 5

    (341 )
    , 950



    2



    klávesnice



    spracovanie dát



    32



    35

    Je potrebné pripomenúť, že operátori môžu byť o Pripojené môžete vykonať výkonné vyhľadávanie. Môžete filtrovať produkty "počítač" so zásobami menej ako 20 a výrobky, ktoré "dodávajú" s akciou menšou ako 200nasledované vyhľadávacím SQL alter tabuľku pridať obmedzenia: SELECT * FROM produitWHERE (kat gória = 'informatique' A inventár
    id hodnota (ID)



    nom (názov) (370? )


    mačka? gória (kategória)



    akcií (akcie)



    prix (cena) (382 )


    1



    počítača



    pre spracovanie dát



    5



    , 950



    2



    , myší

    (412 )
    spracovanie dát



    16



    30



    4
    (427 )

    ceruzka



    dodanie



    , 147



    2

    Identifikačný kľúča

    až cudzieho kľúča SQL s obmedzujúcimi podmienkami, klávesy možno definovať, že je určiť stĺpce, ktorých znalosť vám umožní priradiť presne jeden z nich a jeden riadok. Sada stĺpcov, ktoré sú súčasťou aktuálnej tabuľke sa nazýva primárny kľúč a stanovil návrh primárny kľúč nasledovaný zoznamu stĺpcov, oddelený čiarkami v zátvorkách. Neberú NULL hodnoty by mali byť také, aby tieto dva riadky nemôžu súčasne mať rovnakú kombináciu hodnôt pre tieto stĺpce. PRIMARY KEY (colonne1 colonne2). Po zobrazení zoznamu stĺpcov, ktorá má určiť primárny kľúč v tabuľke, použije ponuku SQL pridať väzby cudzí kľúč, nasledovaný zoznamom aktuálneho stĺpca tabuľky, oddelený čiarkami, v zátvorkách. Potom údaje v zátvorkách musí ponúknuť referencie, nasledované názvom vonkajších stolov a zoznam stĺpcov oddelených čiarkou. FOREIGN KEY (colonne1 colonne2) Odkazy Nom_de_la_table_etrangere (colonne1colonne2)

    primárny kľúč

    záujmy mimo úložisko databázy - je usporiadať toto úložisko a umožňujústanoviť určité pravidlá. Takže pre každú z tabuliek je obyčajne určený primárny kľúč. Bude jednoznačne identifikovať vyhľadávanie podľa riadku pri prezentácii. Preto pri deklarovaní stĺpca ako kľúčového DBMS automaticky vytvorí index obmedzenia. Možno ho splniť:
    databázy názov podarilo obmedzenia, ak sa nazývajú primárny kľúč. Počítač môže byť tiež vytvorený druhýkrát v alterovom poradí v tabuľke. Tento primárny kľúč bude absolútnym identifikátorom na použitie. DBMS sa nezaobíde bez neho, pretože rowid, takže je potreba pre primárny kľúč nie je technicky existuje, ale má malý zmysel aplikácií. Táto primárny kľúč vo väčšine prípadov obmedzuje integritu, tj správu určitých dát v jednej tabuľke ako iné parametre, ktoré patria do iných tabuliek.
    Napríklad, riadenie vzťahov so zákazníkmi databázy dostupnosť zakázané bez faktúr na objednávku. V tabuľke účtov vytvorte externý kľúč, ktorý bude obmedzený prítomnosťou kľúča.

    Obmedzenie cudzí kľúč

    Pre PC obmedzenia cudzí kľúč (FK) je na vytvorenie tabuľky, pomocou procesu nastavenia kľúče a indexy s nimi súvisiace, ktorý bude vytvorený na FK, takže po pripojení žiadosti o pripojenie jednoduchšie. Okrem obmedzení primárneho alebo externého kľúča existujú aj ďalšie obmedzenia:
    Napríklad obmedzenie jednoty iný ako ten, ktorý zodpovedá primárny kľúč. Musíte vytvoriť jedinečný index: vytvoriť jedinečný indexnum_s? cu on personne. Ďalšou možnosťou obmedzenia je verifikačný limit, ktorý zvyčajne umožňuje určiť rozsah alebo formát. Pozitívna hodnota pre spotrebu je mierou výberu zdvorilosti (ekvivalentná ENUM pre niektoré ďalšie DBMS) a je uložená veľkými písmenami:
    DBMS teda umožňuje vytváranie obmedzení integrity všetkých druhov, ale akonáhle sú aplikované, nie je možné koncept aktívne /neaktívne. Neaktívne obmedzenie neovplyvňuje prácu databázy (vloženie, odstránenie,). Čas potrebný na opätovné aktivovanie napätia však môže byť zdĺhavý, v závislosti od postupov, ktoré je potrebné vykonať na kontrolu tohto obmedzenia SQL alter. Ale je zvyčajne zaujímavé zakázať obmedzenia. Obmedzenie je zakázané nasledovne: ALTER TABLE ma_table DISABLE CONSTRAINT ma_constraint; A aktivovaný: ALTER TABLE ma_table ENABLE CONSTRAINT ma_constraint; Samozrejme treba poznamenať, že akékoľvek (aktivované) obmedzenie, ktoré sa uplatňuje na databázu, si vyžaduje ďalšie spracovanie na vloženie, modifikáciu alebo vymazanie. Tieto procesy majú tendenciu spomaľovať používanie databázy, a preto by mali byť použité ekonomicky. Príkaz ALTER TBLE zmení štruktúru tabuľky. Ak sa použije pri aktuálnom dopyte, príkaz ALTER čaká na jeho ukončenie. Použite príkaz: Upravte hodnotu stĺpca. Predvolené hodnoty sa vzťahujú na nasledujúce príkazy INSERT, nie na riadky. Premenovanie stĺpcov alebo tabuliek bez zmeny typu v tomto príkaze môžete ignorovať stĺpec kľúčových slov. Jazyk neumožňuje zmeniť obmedzenia. Namiesto toho súmali by tieto obmedzenia odstrániť alebo vytvoriť. Zmeňte dĺžku stĺpca varchar. Ak sa v tabuľke odkazuje na uloženú procedúru, môžete pridať alebo odstrániť stĺpec. Pred vykonaním príkazu ALTER TABLE môžete odstrániť uloženú procedúru a potom ju upraviť po úprave tabuľky.

    Spúšť: záruka referenčnej integrity

    Externé klávesy slúžia na určenie stĺpcov tabuľky, ktorá zaručuje spoľahlivosť inej tabuľky. To znamená, že prvky sa nazývajú spúšťače, aby zabezpečili, tieto obmedzenia sú označené termínom referenčné integrite (y) a Uistite sa, že reťazec je použitý s ďalšou tabuľka skutočne existuje. Tieto žabky sú v stave "Odstrániť" a "Update":
  • ON DELETE - sprevádzaný argumenty v rovnátka, ktoré umožňujú určiť akciu vykonanú odstránením linku.
  • CASCADE - označuje kaskáda odstránenie riadkov, ktorých kľúče zodpovedá primárna adresa je.
  • RESTRICT - označuje chybu pri mazaní hodnoty príslušného tlačidla.
  • SET NULL - umiestni NULL do reťazca, ak je hodnota vymazaná.
  • nastavenie východzích - vloží predvolenú hodnotu (ktorá by mala byť v tomto parametri), v rade, ak je odstránená hodnota.
  • V "Update" ísť argumentov v zložených zátvorkách, ktoré umožňujú určiť akciu vykonanú zmenou riadku, ktorý je súčasťou kľúča:
  • CASCADE - označuje kaskádu modifikácie linky exteriérový stôl, ktorého klávesy zodpovedajú tlačidlám zmenených riadkov.
  • RESTRICT - označuje chybu príslušného tlačidla.
  • SET NULL -vloží hodnotu NULL do riadku, ak sa hodnota príslušného kľúča zmení.
  • SET DEFAULT - nastaví predvolenú hodnotu, ktorú má tento parameter dodržať v riadku, ak sa zmení hodnota príslušného kľúča.
  • Schválenia sú výrazy, ktoré sa musia vykonať pri úprave údajov, aby mohli byť vykonané, a tak zaručujú integritu údajov.
  • Ich syntax je nasledujúci: CREATE ASSERTION Nom_de_la_contrainte CHECK (expression_conditionnelle) Podmienka, ktorú je potrebné vykonať, sa dá urobiť (a zvyčajne) s príkazom SELECT.

    Súvisiace publikácie