Vrste podataka u MYSQL -u za upotrebu u bazama podataka

Učite li o upraviteljima baza podataka? U tom slučaju morate se informirati o vrste podataka u MySQL -u, jedan od najboljih i najčešće korištenih na svijetu. Ne propustite priliku!.

Tipovi podataka-u-Mysql-2

Vrste podataka u MySQL -u

Svaki put kad moramo stvoriti tablicu koja se može koristiti za pohranu podataka za aplikaciju, moramo znati prepoznati koja vrsta podataka nam pomaže da bolje pohranimo sve što nam je potrebno za arhiviranje. Možemo birati između tri: brojčanih podataka, nizova (alfanumeričkih) i datuma i vremena.

U tim poljima MYSQL tablica imamo mogućnost biranja između tri vrste sadržaja, i iako se čini očitim, odredite kamo ćemo poslati svoje podatke, kojoj će vrsti grupe skladište pripadati, ovdje imamo primjer za sebe u kontekstu: da, potrebno nam je polje s kojim možemo pohraniti dob osobe, tada bi to bilo polje s numeričkim podacima.

No, prije nego nastavim objašnjavati, znate li što je MySQL? Poznat je kao jedan od najčešće korištenih upravitelja baze podataka otvorenog koda u svijetu. Kako bismo imali predodžbu o tome koliko je popularan, reći ćemo vam sljedeće: WordPress je upravitelj različitih vrsta sadržaja, koji postoji od 2003. godine, te da oko 55% do 60% web stranica postoje, napravljeni su zahvaljujući tome i koristi MySQL kao bazu podataka, pa to dokazuje koliko može biti korisno i opseg koji ima.

MySQL pripada tvrtki Oracle Corporation koja je bila zadužena za kupnju 2010. Ovaj upravitelj ima više namjena, poput: prakse, izvođenja instalacija, izmjene web stranica, čitanja podataka, između ostalog.

Ovaj se upravljački program može lako preuzeti i ima nekoliko verzija, ovisno o sustavu Windows koji koristite, na isti način, vrlo ga je lako instalirati.

Velika većina upravitelja baza podataka koristi se programskim jezikom. Recimo da su, na primjer, informacije koje imamo na svojim računalima dostupne u bazi podataka, ali kada ih trebamo pregledati i upravljati, koristi programski jezik; U slučaju MySQL, prati ga php, koji je poznat kao jezik za web razvoj, isti s kojim se razvija WordPress.

Pretpostavljamo da zbog brzine možemo preporučiti preuzimanje alata XAMPP koji je dostupan za različite verzije sustava Windows. XAMPP dolazi s nizom komponenti, među kojima imamo:

  • Apache: Ovo bi bio web poslužitelj.
  • PHP: Jezik za web razvoj.
  • Fillezilla: On je zadužen za mobiliziranje datoteka.
  • Merkur: To je poslužitelj pošte koji ima svrhu obavljanja testova.
  • MySQL: Kao što smo ranije spomenuli, radi se o poslužitelju baze podataka.

Nakon instaliranja XAMPP -a moći ćete uživati ​​u svim tim komponentama, uključujući MySQL, koji možete izravno pokrenuti i povezati s grafičkim sučeljem, zato je XAMPP iznimno koristan, osim što ima i ostale komponente.

Imajući sve ovo jasno, htjeli smo objasniti da unutar naših mogućnosti za vrste tablica za pohranu naših podataka, i govoreći o polju numeričkih podataka, unutar ovih istih imamo i druge vrste, te moramo znati koja bi bila najbolja, koja bi daju nam priliku da potrošimo manje fizičkog prostora za pohranu i dat će nam mogućnost podataka koje se nadamo pohraniti na tom polju. Jedini način za razumijevanje ovih pitanja su različite vrste podataka koje nam MySQL pruža, u nastavku ćemo pružiti te podatke kako bismo razumjeli najprikladniju uporabu svake grupe.

Pozivamo vas da u donjem videu pogledate intenzivni tečaj o vrstama podataka u MySQL -u i svemu što trebate znati o njemu. Ne propustite priliku za učenje!:

Numerički podaci

Razlika koju bismo mogli pronaći između jedne vrste podataka i druge u MySQL -u je jednostavno raspon vrijednosti koje mogu sadržavati. Unutar numeričkih podataka moramo vidjeti da možemo razlikovati dvije velike grane: cijeli broj i decimalu; Sada bismo htjeli objasniti vrste numeričkih podataka koje možemo imati prema situaciji koja nam se predstavlja i što nam je potrebno:

Numerički cijeli brojevi

Prvo što želimo objasniti u ovom trenutku je da bi opcije za pohranu ove vrste podataka bile godine, količine i veličine bez decimalnih mjesta. Također bismo htjeli predstaviti primjer kako bismo bolje razumjeli koju vrstu podataka trebamo odabrati za svako polje:

Predstavljamo TINYINT, tip podataka koji nam omogućuje pohranu maksimalne vrijednosti 127. Dakle, ako moramo definirati polje za dob naših korisnika, ovo bismo mogli koristiti jer je normalni dobni raspon unutar tog broja , i osim ako ne živimo u doba biblijskog Starog zavjeta, nitko nije biološki nadmašio taj broj; Dakle, ne, ova vrsta podataka ne dopušta nam spremanje 567, na primjer, čak ni 128, ako granica dosegne 127.

Sada, ako želimo definirati polje za identifikator velikog tržišta za prodaju tisuća različitih i raznolikih stvari, to bi se promijenilo eksponencijalno, jasno da nam TINYINT više ne služi, osim toga trebali bismo znati vrlo precizno količinu artikala prodaje, ali ne samo s onim što trenutno imamo, već pokušavajući prognozirati svoju blisku budućnost, na taj način naš sustav za pohranu neće brzo zastarjeti.

Mogli bismo upotrijebiti nešto poput SMALLINT -a koji će nam omogućiti da brojimo do 32,000 članaka, ali ako promijenimo primjer i pređemo s tržišta na polje ID -a koje bi se trebalo koristiti za korisnički stol telefonske tvrtke s 5 milijuna korisnika, više nije mogao imati SMALLINT, već neke druge poput MEDIUMINT -a, pa nastavljamo, u slučaju da je naša tvrtka imala 200 milijuna klijenata, trebali bismo koristiti polje tipa INT. Problem se mijenja u slučaju da postanete hiroviti i želite definirati polje koje identificira svako ljudsko biće koje živi na planeti Zemlji, tada bismo trebali zatražiti pomoć od BIGNIT polja, jer tip INT dopušta samo do dvije tisuće milijuna različite podatke, a to do nas očito ne bi došlo.

Također želimo potvrditi postojanje negativnih vrijednosti, koje bismo mogli pronaći kada želimo sačuvati rezultat igre, ili oznaku ispod nule koja bi između ostalog mogla označiti tablicu.

Nepotpisane vrijednosti

Pogledajmo to ovako: negativna dob uopće ne bi imala smisla. Ako postoji mogućnost udvostručenja granice najveće pozitivne vrijednosti svakog podatka, čime bi se uklonila mogućnost da to polje može pohraniti negativne vrijednosti, mi bismo udvostručili pozitivnu granicu pohrane, a polje tipa TINYINT koje inače dopušta pohranjivanje vrijednosti Od 127, sada će vam omogućiti spremanje vrijednosti od 0 do 255.

I kako definirati polje koje nema znak? Putem UNSIGNED modifikatora možemo definirati numeričko polje. Pomoću ovoga trebali bismo pronaći stupac koji glasi Atributi i vrijednost UNSIGNED, a ovo polje više ne može sadržavati negativne vrijednosti, čime se udvostručuje njegov kapacitet pohrane.

Vrijedno je spomenuti da je važno da prilikom definiranja polja u stupcu koje bismo pronašli kao Dužina napišemo broj u skladu s kapacitetom pohrane koji smo upravo odabrali. Nastavljajući s primjerom dobi, ako radimo s TINYNIT -om, moramo staviti trojku kao duljinu, a ne veći ili manji broj.

Brojevi s decimalama

Cijene, plaće, iznosi bankovnih računa, između ostalog, prešli smo na numeričke vrijednosti s decimalama i za sobom smo ostavili cijele brojeve, unatoč činjenici da se ti tipovi podataka nazivaju "pomičnim zarezom" jer zarez odvaja dio cijeli broj i decimalni dio, zapravo između MySQL tipova podataka, pohranjuje ih odvajajući ih točkom; odavde bismo imali tri vrste podataka: PLASTI, DVOJNI i DECIMALNI.

FLOAT će nam omogućiti pohranu barem vrijednosti -999.99, a najviše 999.99. Uzmite u obzir da se znak - ne računa, već točka koja ih razdvaja, odnosno decimalna točka, da, zato bi oni ukupno bili šest znamenki, iako napominjemo da su dvije od njih desetka; ali imamo nešto što se zove jednostavan raspon preciznosti, što nas tjera da imamo decimalne veličine između 0 i 24.

S druge strane, DOUBLE, dvostruka preciznost, dopušta samo definiranje broja decimalnih mjesta između 25 i 23. Korištenje FLOAT -a, što je jednostavna preciznost, moglo bi uzrokovati probleme sa zaokruživanjem i gubitak preostalih decimalnih mjesta. Ono što tek treba objasniti je DECIMALNO, što je najbolje za pohranu novčanih vrijednosti gdje je potrebna manja duljina, ali maksimalna točnost, i bez zaokruživanja, ova vrsta podataka dodjeljuje fiksnu širinu broju koji će pohraniti. Maksimalni ukupni broj znamenki za ovu vrstu podataka je 64, od kojih je 30 najveći dopušteni broj decimalnih mjesta, više nego dovoljno za pohranu cijena, plaća i valuta.

decimalna točka-1

Alfanumerički podaci

Na kraju ostavljamo kategoriju numeričkih podataka kako bismo unijeli novu. Ovdje ćemo govoriti o pohranjivanju nizova znakova, kako bismo to bolje objasnili, a među vrstama podataka u MySQL -u imamo sljedeće: CHAR, VARCHAR, BINARY, VARBINARY, TINYBLOB, TINYTEXT, BLOB, TEXT, MEDIUMBLOB, MEDIUMTEXT, LONGBLOB, LONGTEXT, ENUM i SET, svaki ima svoje karakteristike i svoje prednosti ovisno o tome koje podatke želimo pohraniti.

Podaci o datumu i vremenu

Ovo bi bila naša posljednja kategorija kada su u pitanju tipovi podataka u MYSQL -u. Vidjet ćemo da imamo nekoliko mogućnosti za spremanje upućenih podataka, datuma i vremena, uvidjevši razliku između jednog i drugog i njihovu glavnu uporabu, na taj ćemo način u svakom slučaju moći odabrati odgovarajuću vrstu podataka.

INFORMACIJE

Ova vrsta podataka u MySQL-u omogućuje nam pohranu datuma gdje prve četiri znamenke pripadaju godini, sljedeće dvije mjesecu i posljednje dvije danu, iako smo u zemljama španjolskog govornog područja navikli da datume prvo naručujemo prema dan, pa mjesec, pa godina, za MYSQL je potpuno obrnuto.

Važno je znati da prilikom čitanja polja DATE, iako se pojavljuje s crticama koje odvajaju godinu od mjeseca i mjesec od dana, prilikom umetanja ovih podataka možemo raditi sve kontinuirano, na primjer, možemo to vidjeti kao ovo: 2018-06-04 i umetnite ga ovako 20180604. Raspon datuma koji nam DATE dopušta obradu je 1000-01-01 do 9999-12-31.

Osim ako nemamo veze s događajem koji se dogodio prije dvije tisuće godina i moramo ga razotkriti, nećemo imati problema s ovim formatom; s druge strane, s pogledom u budućnost imamo više mogućnosti, budući da smo s ovim formatom skoro dosegli 10,000 godina.

DATUM VRIJEME

Ako polje definirano kao DATETIME omogućit će nam pohranu podataka ne o datumu, već o trenutku, trenutku vremena, osim datuma, i rasporedu, prvo bismo imali godinu, zatim mjesec, pa dan , tada bismo imali i sat, minute, pa čak i sekunde, format izgleda ovako:

  • GGGG- MM- DD HH: MM: SS

Dio datuma ima raspon sličan onom tipa DATE (10,000 godina), odnosno od 1000-01-01 do 9999-12-31. Dio rasporeda izgledao bi ovako: od 00:00:00 do 23:53:53. Sve bi kompletno izgledalo ovako: 1000-01-01 00:00:00 do 9999-12-31 23:59:59.

VRIJEME

Ovdje nam je dopušteno pohranjivati ​​sate, minute i sekunde, i da, i prethodni tip podataka je to učinio, ali s TIME imamo dopušteni raspon koji ide od: -839: 59: 59 do 839: 59: 59; to bi trajalo oko 35 dana naprijed i natrag na trenutni datum. Ova vrsta podataka idealna je za izračunavanje proteklih vremena između dva bliska trenutka.

VREMENSKI KAMP

Ovdje imamo tip podataka koji bi mogao biti vrlo sličan DATETIME, ali su njegov format i raspon različiti, iako je još uvijek koristan za spremanje datuma i vremena. Uz polje ovog formata mogu nam se predstaviti tri mogućnosti, prva je: GGGG-MM-DD HH: MM: SS, druga je: GGGG-MM-DD, a treća je jednostavnija: GG-MM-DD .

Ovdje imamo mogućnost da imamo moguću duljinu od 14, 8 ili 6 znamenki, sve ovisi o podacima koje dajemo. Ovaj format nije niti povijestan niti toliko futuristički kao drugi, budući da raspon kojim se ovo polje bavi ide samo od 1970.-01.-01. Do 2037.

Osim toga, kao zanimljiva činjenica, možemo ustanoviti da se njezina vrijednost automatski ažurira svaki put kad se zapis unese ili ažurira, na taj način uvijek ćemo u ovom polju držati datum i vrijeme zadnjeg ažuriranja tih podataka, što stvarno je idealno. preuzeti kontrolu bez potrebe za programiranjem bilo čega.

Ako to želimo definirati iz phpMyAdmina, sve što moramo učiniti je odabrati u Atributima opciju koja kaže "pri ažuriranju" CURRENT_TIMESTAMP, a kao zadanu vrijednost CURRENT_TIMESTAMP. Polje čija se vrijednost može automatski ažurirati prilikom umetanja ili izmjene zapisa.

GODINA

U slučaju da moramo uvidjeti potrebu da polje definiramo kao GODINU, možemo pohraniti godinu dana, obje koristeći dvije, kao i četiri znamenke. U slučaju da to činimo dvoznamenkasto, od 70 do 99 (imajući od 70 do 99 shvatit ćemo da oni odgovaraju rasponu godina od 1970. do 1999., a ako imamo znamenke od 00 do 69 tada možemo razumijemo da se odnosi na godine od 2000. do 2069.), u takvom slučaju davanja četiri znamenke tada bismo otkrili da bi se mogući raspon proširio, zatim od 1901. do 2155. godine.

Imamo i dodatnu mogućnost, iako nije povezana s vrstama podataka u MySQL -u, ali se odnosi na datume i vremena. Ova dodatna mogućnost je generiranje vrijednosti vremenske oznake s vremenskom funkcijom PHP (opet želimo pojasniti da više ne govorimo o MYSQL -u, iako se može zbuniti zbog sličnih naziva).

U svakom slučaju, tu bismo vrijednost mogli pohraniti u 10-znamenkasti INT polje, pa će na taj način biti vrlo jednostavno poredati vrijednosti našeg polja (datum vijesti možemo staviti kao primjer), a zatim ćemo mogu prikazati taj datum pretvaranjem te vremenske oznake u nešto što možemo učiniti čitljivim pomoću vlastitih PHP funkcija za rukovanje datumom.

datum-vrijeme-1

Nadam se da smo s ovim člankom o vrstama podataka u MySQL -u uspjeli dovoljno jasno objasniti sve što smo htjeli objasniti i da ste naučili kako stvoriti bazu podataka i tablicu prema svim našim podacima, definirajući njihova polja s potpunom preciznošću koristeći ih tipovima podataka i atributa, stoga, budući da smo u kapacitetu ili u uvjetima za pravilno programiranje, sada imamo jasnu predodžbu o tome koji će nam format točno trebati, što odgovara našim potrebama prema onome što morati programirati.

Pozivamo vas da uživate u još jednom od naših članaka vezanih uz programiranje: Polimorfizam u objektno orijentiranom programiranju.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: Actualidad Blog
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.