Datové typy v MYSQL k použití v databázích

Učíte se o správcích databází? V takovém případě se musíte informovat o datové typy v MySQL, jeden z nejlepších a nejpoužívanějších na světě. Nepropásněte příležitost!.

Data-types-in-Mysql-2

Datové typy v MySQL

Pokaždé, když potřebujeme vytvořit tabulku, kterou lze použít k ukládání dat pro aplikaci, musíme vědět, jak určit, jaký typ dat nám pomáhá lépe ukládat vše, co potřebujeme archivovat. Můžeme si vybrat mezi třemi: číselnými údaji, řetězci (alfanumerickými) a daty a časy.

V těchto polích tabulek MYSQL máme možnost vybrat si mezi třemi typy obsahu, a přestože se to zdá zřejmé, určete, kam posílat naše data, do jaké skupiny patří úložiště, zde máme příklad, jak se dát v kontextu: ano potřebujeme pole, do kterého můžeme uložit věk člověka, pak by to bylo pole s číselnými údaji.

Ale než budu pokračovat ve vysvětlování, víte, co je MySQL? Je známý jako jeden z nejpoužívanějších open source databázových manažerů na světě. Abychom měli představu o tom, jak je populární, řekneme vám, že: WordPress je správcem různých typů obsahu, který existuje od roku 2003, a že přibližně 55% až 60% webových stránek, které existují, jsou vytvořeny díky tomu a používá MySQL jako databázi, takže to dokazuje, jak užitečné to může být a jaký má rozsah.

MySQL patří společnosti Oracle Corporation, která měla na starosti její koupi v roce 2010. Tento manažer má mnohostranné využití, například: postupy, provádění instalací, úpravy webových stránek, čtení dat a další.

Tento ovladač lze snadno stáhnout a má několik verzí v závislosti na operačním systému Windows, který používáte, stejně tak je velmi snadné jej nainstalovat.

Drtivá většina databázových ovladačů se používá prostřednictvím programovacího jazyka. Řekněme, že například informace, které máme na svých počítačích, jsou k dispozici v databázi, ale když je potřebujeme zobrazit a spravovat, používají programovací jazyk; V případě MySQL je doprovázen php, který je známý jako jazyk pro vývoj webu, stejný jako je vyvíjen WordPress.

Předpokládáme, že pro rychlost můžeme doporučit stažení nástroje XAMPP, který je k dispozici pro různé verze Windows. XAMPP přichází s řadou komponent, mezi nimi máme:

  • Apache: Toto by byl webový server.
  • PHP: Jazyk pro vývoj webových aplikací.
  • Fillezilla: Má na starosti mobilizaci souborů.
  • Merkur: Je to poštovní server, který má za úkol provádět testy.
  • MySQL: Jak jsme již zmínili, je to databázový server.

Po instalaci XAMPP si budete moci užívat všechny tyto komponenty, včetně MySQL, které můžete spustit přímo a připojit se k grafickému rozhraní, proto je XAMPP kromě dalších komponent nesmírně užitečný.

Když už máme vše jasné, chtěli jsme vysvětlit, že v rámci našich možností pro typy tabulek pro ukládání našich dat, a když už mluvíme o číselném datovém poli, v rámci stejného máme další typy a musíme vědět, který by byl nejlepší, který by dejte nám příležitost spotřebovat méně fyzického úložného prostoru a poskytne nám příležitost dat, která doufáme uložíme do tohoto pole. Jediným způsobem, jak těmto otázkám porozumět, jsou různé typy dat, která nám MySQL poskytuje, níže tyto informace poskytneme, abychom porozuměli nejvhodnějšímu použití každé skupiny.

Ve videu níže vás zveme na intenzivní kurz datových typů v MySQL a všeho, co o něm potřebujete vědět. Nenechte si ujít příležitost učit se!:

Číselné údaje

Rozdíl, který bychom mohli najít mezi jedním typem dat a druhým v MySQL, je jednoduše rozsah hodnot, které mohou obsahovat. V rámci numerických dat musíme vidět, že můžeme rozlišit dvě velké větve: celá čísla a desetinná místa; Nyní bychom rádi vysvětlili typy numerických dat, které můžeme mít podle situace, která je nám předložena, a toho, co potřebujeme:

Numerická celá čísla

První věc, kterou chceme v tomto bodě vysvětlit, je, že možnosti, které máme k uložení tohoto typu dat, by byly věky, veličiny a velikosti bez desetinných míst. Rádi bychom také uvedli příklad, abychom lépe porozuměli tomu, jaký typ dat bychom měli pro každé pole zvolit:

Představujeme TINYINT, datový typ, který nám umožňuje uložit maximální hodnotu 127. Pokud tedy potřebujeme definovat pole pro věk našich uživatelů, toto bychom mohli použít, protože normální věkové rozmezí je v rámci tohoto čísla , a pokud nežijeme v době biblického Starého zákona, nikdo toto číslo biologicky nepřekonal; Takže ne, tento typ dat nám neumožňuje uložit například 567, dokonce ani 128, pokud limit dosáhne 127.

Pokud bychom nyní chtěli definovat pole pro identifikátor velkého trhu za účelem prodeje tisíců různých a různorodých věcí, toto by se exponenciálně změnilo, zjevně nám TINYINT již neslouží, navíc bychom měli velmi přesně znát množství položek prodává, ale nejen s tím, co v současné době máme, ale snaží se předpovědět naši blízkou budoucnost, tímto způsobem náš úložný systém rychle nezastará.

Mohli bychom použít něco jako SMALLINT, který nám umožní číslovat až 32,000 5 článků, ale pokud změníme příklad a přejdeme z trhu do pole ID, které by mělo být použito pro tabulku zákazníků telefonní společnosti s 200 miliony uživatelů, již nemohl mít SMALLINT, ale některé další, jako je MEDIUMINT, a pokračujeme v případě, že naše společnost měla XNUMX milionů klientů, měli bychom použít pole typu INT. Problém se mění v případě rozmarnosti a touhy definovat pole, které identifikuje každou z lidských bytostí žijících na planetě Zemi, pak bychom měli požádat o pomoc pole BIGNIT, protože typ INT umožňuje pouze až dva tisíce milionů různé kusy dat, a to by se k nám zjevně nedostalo.

Chceme také potvrdit existenci záporných hodnot, které bychom mohli najít, když chceme uložit skóre hry, nebo značku pod nulou, kterou by mimo jiné mohla označit tabulka.

Nepodepsané hodnoty

Podívejme se na to takto: mít negativní věk by nemělo žádný smysl. Pokud existuje možnost zdvojnásobení limitu maximální kladné hodnoty jednotlivých dat, což eliminuje možnost, že toto pole může ukládat záporné hodnoty, zdvojnásobili bychom kladný limit úložiště a pole typu TINYINT, které normálně umožňovalo ukládat hodnoty Z 127, nyní vám umožní ukládat hodnoty od 0 do 255.

A jak definujeme pole, které nemá žádné znaménko? Prostřednictvím modifikátoru UNSIGNED můžeme definovat číselné pole. Pomocí toho bychom měli najít sloupec, který čte Atributy a hodnotu NEPODPISOVÁNO a toto pole již nemůže obsahovat záporné hodnoty, čímž se zdvojnásobí jeho kapacita úložiště.

Stojí za zmínku, že je důležité, aby při definování pole ve sloupci, které bychom našli jako Délka, napsali číslo konzistentní s kapacitou úložiště, kterou jsme právě vybrali. Pokračujeme -li věkovým příkladem, pracujeme -li s TINYNIT, musíme zadat trojku jako délku, nikoli větší či menší číslo.

Čísla s desetinnými místy

Ceny, platy, částky bankovního účtu, mimo jiné jsme se přesunuli na číselné hodnoty s desetinnými místy a nechali jsme za sebou celá čísla, a to navzdory skutečnosti, že tyto datové typy se nazývají „plovoucí desetinná čárka“, protože čárka odděluje část celé číslo a desetinná část, vlastně mezi datovými typy MySQL, je ukládá a odděluje je tečkou; odtud bychom měli tři typy dat: FLOAT, DOUBLE a DECIMAL.

FLOAT nám umožní uložit minimálně hodnotu -999.99 a maximálně 999.99. Vezměte v úvahu, že znaménko - se nepočítá, ale bod, který je odděluje, to znamená desetinná čárka, ano, proto by byly celkem šestimístné, i když poznamenáváme, že dvě z nich jsou desetinná místa; ale máme něco, čemu se říká jednoduchý rozsah přesnosti, který nás nutí mít desetinná množství mezi 0 a 24.

Na druhou stranu, DOUBLE, což je dvojnásobek přesnosti, umožňuje definovat pouze počet desetinných míst mezi 25 a 23. Použití FLOAT, což je jednoduchá přesnost, by mohlo způsobit problémy se zaokrouhlováním a ztrátu zbývajících desetinných míst. Zbývá vysvětlit DECIMAL, který je nejlepší pro ukládání peněžních hodnot, kde je požadována menší délka, ale maximální přesnost, a bez zaokrouhlování tento typ dat přiřazuje pevnou šířku číslu, které bude ukládat. Maximální celkový počet číslic pro tento typ dat je 64, z čehož 30 je maximální povolený počet desetinných míst, což je více než dost na uložení cen, mezd a měn.

desetinná čárka-1

Alfanumerická data

Nakonec opustíme kategorii číselných údajů a zadáme novou. Zde budeme hovořit o ukládání řetězců znaků, abychom to lépe vysvětlili, a mezi datovými typy v MySQL máme následující: CHAR, VARCHAR, BINARY, VARBINARY, TINYBLOB, TINYTEXT, BLOB, TEXT, MEDIUMBLOB, MEDIUMTEXT, LONGBLOB, LONGTEXT, ENUM a SET, každý má své vlastní vlastnosti a své výhody v závislosti na tom, jaká data chceme ukládat.

Data data a času

To by byla naše poslední kategorie, pokud jde o datové typy v MYSQL. Uvidíme, že máme několik možností, jak ukládat doporučená data, data a časy, protože vidíme rozdíl mezi jedním a druhým a jejich hlavní využití. Tímto způsobem budeme moci v každém případě vybrat vhodný typ dat.

DATA

Tento typ dat v MySQL nám umožňuje ukládat data, kde by první čtyři číslice patřily roku, další dvě do měsíce a poslední dvě do dne, ačkoli ve španělsky mluvících zemích jsme zvyklí objednávat data jako první ve dne, pak v měsíci a poté v roce, pro MYSQL je to úplně naopak.

Je důležité vědět, že při čtení pole DATE, přestože se objevuje s pomlčkami oddělujícími rok od měsíce a měsíc od dne, nám při vkládání těchto dat umožňuje dělat vše průběžně, například to můžeme vidět jako toto: 2018-06-04 a vložte jej takto 20180604. Období, které nám DATE umožňuje zpracovat, je 1000-01-01 až 9999-12-31.

Pokud nebudeme mít něco společného s událostí, která se stala před dvěma tisíci lety, a nebudeme ji potřebovat odhalit, nebudeme mít s tímto formátem žádné problémy; na druhou stranu s ohledem na budoucnost máme více příležitostí, protože s tímto formátem jsme téměř dosáhli roku 10,000 XNUMX.

ČAS SCHŮZKY

Mít pole definované jako DATETIME nám umožní ukládat informace nikoli o datu, ale o okamžiku, okamžiku, kromě data, také jeho plánu, nejprve bychom měli rok, pak měsíc, pak den , pak bychom také měli hodinu, minuty a dokonce i sekundy, formát vypadá takto:

  • RRRR- MM- DD HH: MM: SS

Datová část má rozsah podobný rozsahu typu DATE (10,000 1000 let), tj. Od 01-01-9999 do 12-31-00. Část plánu by probíhala takto: od 00:00:23 do 53:53:1000. Všechno kompletní by vypadalo takto: 01-01-00 00:00:9999 až 12-31-23 59:59:XNUMX.

TIME

Zde můžeme ukládat hodiny, minuty a sekundy, a ano, předchozí datový typ také, ale s TIME máme povolený rozsah, který se pohybuje od: -839: 59: 59 do 839: 59: 59; k aktuálnímu datu by to trvalo asi 35 dní tam a zpět. Tento typ dat je ideální pro výpočet uplynulých časů mezi dvěma blízkými momenty.

ČASOVÉ RAZÍTKO

Zde máme datový typ, který by mohl být velmi podobný DATETIME, ale jeho formát a rozsah jsou různé, i když je stále užitečné ukládat datum a čas. V poli tohoto formátu nám mohou být předloženy tři možnosti, první je: RRRR-MM-DD HH: MM: SS, druhý je: RRRR-MM-DD a třetí je jednodušší: RRR-MM- DD.

Zde máme možnost mít možnou délku 14, 8 nebo 6 číslic, vše závisí na informacích, které poskytneme. Tento formát není ani tak historický, ani futuristický jako ostatní, protože rozsah, který toto pole zpracovává, sahá pouze od roku 1970-01-01 do roku 2037.

Navíc, jako kuriózní fakt, můžeme zjistit, že jeho hodnota je automaticky aktualizována při každém vložení nebo aktualizaci záznamu, takže v tomto poli budeme vždy uchovávat datum a čas naší poslední aktualizace těchto dat, která je opravdu ideální. převzít kontrolu, aniž byste museli cokoli programovat.

Pokud to chceme definovat z phpMyAdmin, stačí, když v atributech vybereme možnost, která říká „při aktualizaci“ CURRENT_TIMESTAMP a jako výchozí hodnotu CURRENT_TIMESTAMP. Pole, jehož hodnotu lze automaticky aktualizovat při vkládání nebo úpravách záznamu.

ROK

V případě, že vidíme potřebu definovat pole jako ROK, můžeme uložit rok, a to jak pomocí dvou, tak čtyř číslic. V případě, že to uděláme dvěma číslicemi, od 70 do 99 (od 70 do 99, pochopíme, že tyto odpovídají rozsahu let od roku 1970 do roku 1999, a pokud máme číslice od 00 do 69, pak můžeme rozumíme, že se to týká let 2000 až 2069), v takovém případě poskytnutí čtyř číslic bychom pak zjistili, že by se možný rozsah rozšířil, a to od roku 1901 do 2155.

Máme také další možnost, i když nesouvisí s datovými typy v MySQL, ale souvisí s daty a časy. Tato další možnost je vygenerovat hodnotu časového razítka pomocí časové funkce PHP (opět chceme objasnit, že už nemluvíme o MYSQL, i když je platné se nechat zmást, protože mají docela podobná jména).

Každopádně bychom mohli tuto hodnotu uložit do 10místného pole INT, tímto způsobem bude velmi jednoduché objednat hodnoty našeho pole (jako příklad můžeme uvést datum zprávy) a poté může ukázat toto datum transformací časového razítka hodnoty na něco, co můžeme učinit čitelnými pomocí vlastních funkcí PHP pro zpracování data.

datum-čas-1

Doufám, že jsme s tímto článkem o datových typech v MySQL dokázali dostatečně srozumitelně vysvětlit vše, co jsme chtěli vysvětlit, a že jste se naučili, jak vytvořit databázi a tabulku podle všech našich informací, přičemž s naprostou přesností definujete jejich pole pomocí jejich typů dat a atributů, proto, abychom byli schopni nebo v podmínkách, začít správně programovat, nyní máme jasnou představu o tom, jaký formát přesně budeme potřebovat, což odpovídá naší potřebě podle toho, co muset programovat.

Zveme vás, abyste si užili další z našich článků týkajících se programování: Polymorfismus v objektově orientovaném programování.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za data: Actualidad Blog
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.