A modern világban nagyok vannakaz információk tárolására szolgáló eszközök és technológiák száma. Az egyik leggyakoribb módszer az adatbázisok, amelyek különböző kezelési rendszerekkel működnek együtt. Ez a tárolási módszer azt feltételezi, hogy az összes adat egyértelműen felépítésre került és speciális táblázatokban szerepel. Ezek viszont egy adott adattípus típusú attribútumokból állnak.
Adattípus - mi az?
Ma több meghatározás létezikmagyarázza az "adattípus" fogalmát. Mindazonáltal mindegyiknek közös jelentése van. Ezért az adattípus szokásosan adatcsoportként jelölhető meg, értékei (karakter, numerikus stb.), Valamint a vizsgált értékekre alkalmazott műveletek.
Az adattípusok köre sokoldalú.Nemcsak információk tárolására, hanem programozásra is szolgálnak a különböző problémák megoldásához. A programok megtervezésekor széles körben elterjedt a saját adattípusok kidolgozásának és használatának gyakorlata egy adott művelettel. A felhasználói bázis azonban mindig alapadat-típusokon alapul. Az SQL szabvány a leggyakoribb alap típusok használatán alapul, de számos speciális kiegészítéssel.
Adattípus szerinti besorolás
Az adatok típus szerinti csoportosítása régen történtaz információ strukturálására van szükség a kényelmesebb feldolgozás érdekében. Jelenleg a meglévő adattípusok alapja két formátumú: karakteres és numerikus.
Ezek alapján egy modern osztályozás került kifejlesztésre, beleértve a mutatókat, logikai, egész számokat, lebegőpontos numerikus és string adattípusokat. SQL-a besorolás teljes egészében magában foglalja a fentieket. Néhány modern DBMS esetében azonban további bővítmények vannak. Ezek közé tartozik az Oracle és a MySQL.
Alapadat-típusok
Az SQL nyelvek szabványainak megfelelő táblázatok attribútumainak létrehozásához használják, az adattípusok 4 osztályra oszthatók:
- string értékek;
- frakciókat;
- egész értékek;
- dátum és idő értékeket.
String adattípus
Az első értékcsoport lehetővé teszi, hogy a szimbólumként megjelenített adatokat tárolja.
Ezek lehetnek speciális karakterek, számok ésolyan betűket, amelyeket teljes egészében SQL lekérdezésként feldolgoznak. Az adattípusok, a táblázat, amelynek felsorolását az alábbiakban mutatjuk be, az első csoportot alkotják.
CHAR (méret) | Húrok tárolására használják. A zárójelben lévő paraméter segítségével rögzítheti a tárolt karakterlánc hosszát. A karakterláncra beállítható byte maximális mérete 255. |
Varchar (méret) | Az előző típushoz hasonlóan tárolhatóvonalak legfeljebb 255 karakterből állhatnak. Azonban a különbség a CHAR-től az, hogy a szükséges memóriamennyiség van hozzárendelve az ilyen típusú értékek tárolásához. Vagyis egy 5 karakterből álló karakterlánc 6 bájt memóriát igényel. Az első esetben az érték memóriáját a megadott paraméternek megfelelően osztják ki. |
TINY TEXT | Legfeljebb 255 karakterből álló karakterláncok tárolására szolgál. |
TEXT | Szöveges információk tárolására szolgál, amelyek mérete nem haladja meg a 65.535 betűt. |
BLOB | A figyelembe vett adattípus hasonló a TECT típushoz éslehetővé teszi, hogy mentse az adatbázis szöveges információit, amelyek összege elérheti a 65.535 karaktert. De a gyakorlatban hangadatokat, képeket, elektronikus dokumentációt stb. Tárolnak. |
MEDIUM TEXT | A TEXT típus alapján fejlesztették ki, de több adatot tárolhat, akár 16.777.215 betű vagy karakter hosszúságának köszönhetően. |
MEDIUM BLOB | Elektronikus dokumentumok tárolására szolgál az adatbázisban, amelynek mérete nem haladja meg a 16.777.215 karaktert. |
HOSSZÚ TEXT | Az előző típusokhoz hasonlóan működik, de akár 4 gigabájtos memória kapacitással is rendelkezik. |
HOSSZÚ BLOB | Lehetővé teszi nagy mennyiségű adatbázishoz (4 294 967 295 karakter) történő beillesztését. |
ENUM (a, b, c, stb.) | Специальный тип данных, использующийся для a lehetséges értékek listájának beállítása. 65535 értéket adhat meg. A kérdéses típusú karakterláncok egyetlen értéket vehetnek fel a halmazban megadottaktól. Abban az esetben, ha olyan értékeket adunk hozzá, amelyek nem szerepelnek a megadott listában, üres értékeket írnak a táblázatba. |
SET | Megadja az érvényes értékek halmazát.Az előző típustól eltérően 64 paramétert tartalmaz, amelyeket az adott argumentumok bármely vagy több eleme inicializálhat. |
Frakcionált adattípus-táblázat
A tároláshoz használt frakcionált SQL adattípusoklebegőpontos számok. A gyakorlatban általában különféle pénzügyi mutatókat állapítanak meg. A szükséges pontosságtól függően a bemutatott három elem egyikét kell használni:
Úszó (méret, d) | Lehetővé teszi, hogy frakcionált számokat tartalmazzon a megadott pontossággal d. |
Kettős (méret, d) | Részleges számok bináris pontossággal történő tárolására szolgál. |
DECIMAL (méret, d) | Frakcionált értékek tárolása karakterlánccal |
Például bankszámításokban a tört rész pontossága eléri a 8 vagy 10 karakter értékét. Az első két típus nem vonható be ezen a területen.
A pénzügyi mutatók húrként történő tárolásanagyban megkönnyíti sok probléma megoldását. Pénzügyi kérdések megoldásakor vagy különféle SQL műveletek végrehajtásakor azonban az adattípus-konvertálás nagyon fontos. A fejlesztőknek figyelembe kell venniük a tárolási és feldolgozási módszereket, hogy az adatok mindig változatlanok maradjanak.
Egész szám adattípus
Az egész számok egy különálló számcsoport, amelyek az egyik fő osztályt alkotják. Az Integer SQL adattípusok az INTEGER alaptípuson alapulnak, annak tulajdonságainak némi kiterjesztésével.
INT (méret) | A tartományt alkotó egész számok tárolása [-231; 231-1sch |
TINYINT (méret) | A -128 és 127 közötti szám tárolására szolgál |
KIS (méret) | Jellemzője a tárolt értékek megnövekedett tartománya -32 768 és 32 767 közötti méretben |
MEDIUMINT (méret) | -2-es szám tárolására szolgál23 2-ig23-1 |
BIGINT (méret) | Magában foglalja az egész érték-tartományt, amely -2-től kezdődik63 és 2-vel végződik63-1 |
A megfelelő adattípus kiválasztásával jelentősen megtehetimemóriát takaríthat meg, és csökkentheti a szerveridő költségét, amikor a szükséges SQL-lekérdezéseket végrehajtják. Az adattípusok, vagy inkább azok tartománya határozza meg a szükséges tárhely nagyságát.
Ezért fontos, hogy az adatbázis-fejlesztők emlékezzenekhogy az attribútumok nagy tartományainak használata a memóriaköltségek növekedésével jár. Egyértelműen elemezni kell a megoldandó feladatokat, és azonosítani kell azokat az eseteket, amikor a hozzávetőleges tartomány ismert és az előjeles számok használatának feltétele meghatározott. Ha a használt argumentumok köre kicsi, és minden szám pozitív, akkor helyesebb lenne az UNSIGNED attribútum által alkotott előjel nélküli típust használni.
Dátum és idő adattípusok
Az SQL alapjainak elsajátítása során a dátum és az idő adattípusai különösen érdekesek.
Az alábbi típusok használata további előnyökkel jár az időmutatóktól függő rendszerek fejlesztésekor.
DÁTUM | A fő cél a dátum formátumban való tárolásaÉV-HÓNAP-NAP ("ÉÉÉÉ-HH-NN" vagy "éééé-hh-nn" ). Általában az értékeket "-" választja el, azonban a számokon kívül bármilyen karakter használható elválasztóként. |
IDŐ | Lehetővé teszi ideiglenes értékek megadását egy táblázatcellában. Minden érték "óó:pp:ss" formátumban van megadva |
DÁTUM IDŐ | Az előző két típus funkcióit egyesíti. A tárolási formátum a következő: "éééé-hh-nn hh:mm:ss". |
IDŐBÉLYEG | Tárolja a dátumot és az időt az 1970. 01. 01. éjfél óta eltelt másodpercek számában a megadott értékig. |
ÉV (H) | Éves értékek tárolására szolgál két vagy négy számjegyű formátumban. |
Mit kell még tudni?
Az összes ilyen típusú adatot a Microsoft részletesen rendszerezi. Az SQL adattípusokat ő fejlesztette ki részletesebben.
Például a cég részletesen leírja, hogy mennyitAz egyes típusok használatakor bájtban lévő memória kerül lefoglalásra. A rendelkezésre álló információk áttanulmányozása után a fejlesztők könnyebben megtervezhetik a táblák és a teljes adatbázis szerkezetét a szerver hardveres képességei alapján.
Speciális mutató - NULL
Néha, amikor az adatbázis fel van töltve,olyan helyzet, amikor egy rekord táblához adásakor nem kell minden oszlopba információt megadni. Ehhez egy speciális nullmutatót használnak - NULLA, amely segédeszközkéntSQL nyelvet használ. A nem kötelező oszlopok adattípusait a táblázatok létrehozásakor operátorral adjuk meg, lehetővé téve a nullértékek felvételét. Ellenkező esetben az üzemeltető NULLA kiegészítő tartozékkal NEM használható annak jelzésére, hogy minden értéket ki kell tölteni.
Mutató NULLA nincs típusa, hanem egyszerűen egy üres értékre mutat az adatbázistáblákban. Ezért a fenti típusok bármelyikével kombinálható.