Objašnjene vrste SQL podataka i primjeri sintakse MySQL

SQL tipovi podataka

Svaki stupac u tablici baze podataka mora imati ime i vrstu podataka.

SQL programer mora odlučiti koju će vrstu podataka pohraniti unutar svakog stupca prilikom stvaranja tablice. Vrsta podataka je smjernica za SQL da shvati koji se tip podataka očekuje unutar svakog stupca, a također identificira kako će SQL komunicirati sa pohranjenim podacima.

Vrste podataka MySQL

Opći SQL tipovi podataka sastoje se od sljedećeg:

  1. Vrijednost zasnovana na tekstu i / ili brojci, koja se često naziva STRING
  2. Numerička vrijednost, koja se često naziva INTEGER
  3. Vrijednost zasnovana na kalendaru i / ili satu, koja se često naziva DATUM ili VRIJEME
  4. Vrijednost specifična za bazu podataka, kao što je logička zastava (dvije opcije), niz koji pohranjuje više vrijednosti unutar jedne podatkovne točke

Vrste tekstualnih podataka:

Tip podatakaOpis
CHAR (veličina)Sadrži niz fiksne duljine (može sadržavati slova, brojeve i posebne znakove). Fiksna veličina navedena je u zagradama. Može pohraniti do 255 znakova
VARCHAR (veličina)Sadrži niz promjenljive duljine (može sadržavati slova, brojeve i posebne znakove). Maksimalna veličina navedena je u zagradama. Može pohraniti do 255 znakova. Napomena: Ako stavite veću vrijednost od 255, ona će se pretvoriti u TEKST
TINYTEXTSadrži niz maksimalne duljine 255 znakova
TEKSTSadrži niz maksimalne duljine 65.535 znakova
BLOBZa BLOB-ove (binarni veliki objekti). Sadrži do 65.535 bajtova podataka
SREDNJI TEKSTSadrži niz maksimalne duljine 16.777.215 znakova
SREDNJIKASTIZa BLOB-ove (binarni veliki objekti). Sadrži do 16.777.215 bajtova podataka
DUGI TEKSTSadrži niz maksimalne duljine 4.294.967.295 znakova
LONGBLOBZa BLOB-ove (binarni veliki objekti). Sadrži do 4.294.967.295 bajtova podataka
ENUM (x, y, z itd.)Omogućuju vam unos popisa mogućih vrijednosti. Na popisu ENUM-a možete navesti do 65535 vrijednosti. Ako je umetnuta vrijednost koja nije na popisu, umetnut će se prazna vrijednost. Napomena: Vrijednosti su poredane redoslijedom kojim ste ih unijeli. Moguće vrijednosti unosite u ovom formatu: ENUM ('X', 'Y', 'Z')
SETSlično ENUM-u, osim što SET može sadržavati do 64 stavke popisa i može pohraniti više od jednog izbora

Tipovi podataka o broju:

Tip podatakaOpis
TINYINT (veličina)-128 do 127 normalno. 0 do 255 POTPISANO *. U zagradama se može navesti maksimalan broj znamenki
SMAJLICA (veličina)-32768 do 32767 normalno. 0 do 65535 POTPISANO *. U zagradama se može navesti maksimalan broj znamenki
MEDIUMINT (veličina)-8388608 do 8388607 normalno. 0 do 16777215 NEPOTPISAN *. U zagradama se može navesti maksimalan broj znamenki
INT (veličina)-2147483648 do 2147483647 normalno. 0 do 4294967295 POTPISANO *. U zagradama se može navesti maksimalan broj znamenki
VELIKO (veličina)-9223372036854775808 do 9223372036854775807 normalno. 0 do 18446744073709551615 POTPISANO *. U zagradama se može navesti maksimalan broj znamenki
FLOAT (veličina, d)Mali broj s plutajućom decimalnom zarezom. U parametru veličine može se navesti maksimalni broj znamenki. U parametru d naveden je maksimalan broj znamenki desno od decimalne točke
DUPLO (veličina, d)Veliki broj s plutajućom decimalnom zarezom. U parametru veličine može se navesti maksimalni broj znamenki. U parametru d naveden je maksimalan broj znamenki desno od decimalne točke
DECIMALNI (veličina, d)DUPL pohranjen kao niz, omogućujući fiksnu decimalnu točku. U parametru veličine može se navesti maksimalni broj znamenki. U parametru d naveden je maksimalan broj znamenki desno od decimalne točke

Tipovi podataka datuma:

Tip podatakaOpis
DATUM()Datum. Format: GGGG-MM-DD Napomena: Podržani raspon je od "1000-01-01" do "9999-12-31"
DATUM VRIJEME()Kombinacija datuma i vremena. Format: GGGG-MM-DD HH: MI: SS Napomena: Podržani raspon je od '1000-01-01 00:00:00' do '9999-12-31 23:59:59'
VRIJEME ()Oznaka vremena. Vrijednosti TIMESTAMP-a pohranjuju se kao broj sekundi od Unix-ove epohe ('1970-01-01 00:00:00' UTC). Format: GGGG-MM-DD HH: MI: SS Napomena: Podržani raspon je od '1970-01-01 00:00:01' UTC do '2038-01-09 03:14:07' UTC
VRIJEME()Vrijeme. Format: HH: MI: SS Napomena: Podržani raspon je od '-838: 59: 59' do '838: 59: 59'
GODINA()Godina u dvoznamenkastom ili četveroznamenkastom formatu. Napomena: Vrijednosti dopuštene u četveroznamenkastom formatu: 1901 do 2155. Vrijednosti dopuštene u dvoznamenkastom formatu: 70 do 69, što predstavlja godine od 1970. do 2069. godine

Napokon, postoji nekoliko drugih vrsta podataka koje ćete koristiti:

Ostale vrste podataka

Tip podatakaOpis
BOOLEANTrgovine TRUEili FALSEvrijednosti
ARRAYSet i dužina skupa elemenata
MULTISETZbirka elemenata promjenjive duljine
XMLPohranjuje XML podatke