Tipi di dati in MYSQL da utilizzare nei database

Stai imparando sui gestori di database? In tal caso, è necessario informarsi sul tipi di dati in MySQL, uno dei migliori e più utilizzati al mondo, non perdere l'occasione!.

Tipi di dati in Mysql-2

Tipi di dati in MySQL

Ogni volta che dobbiamo creare una tabella che possa essere utilizzata per archiviare i dati per un'applicazione, dobbiamo sapere come identificare quale tipo di dati viene utilizzato per archiviare al meglio tutto ciò che dobbiamo archiviare. Possiamo scegliere tra tre: dati numerici, stringhe (alfanumeriche) e date e orari.

In questi campi delle tabelle MYSQL abbiamo la possibilità di scegliere tra tre tipi di contenuto, e sebbene sembri ovvio, determinare dove inviare i nostri dati, a quale tipo di gruppo apparterrà lo storage, qui abbiamo un esempio per metterci in contesto: sì, abbiamo bisogno di un campo con cui possiamo memorizzare l'età di una persona, quindi sarebbe un campo dati numerico.

Ma prima di continuare a spiegare, sai cos'è MySQL? È noto come uno dei gestori di database open source più utilizzati al mondo. In modo che possiamo avere un'idea di quanto sia popolare, ti diremo che: WordPress è il gestore di diversi tipi di contenuto, che esiste dal 2003, e che circa il 55% - 60% delle pagine web che esistono, sono realizzati grazie a questo e utilizza MySQL come database, quindi questo dimostra quanto possa essere utile e la portata che ha.

MySQL appartiene alla società Oracle Corporation, che era incaricata di acquistarlo nel 2010. Questo gestore ha molteplici usi, come: pratiche, esecuzione di installazioni, modifica di pagine Web, lettura di dati, tra gli altri.

Questo driver può essere facilmente scaricato e ha diverse versioni a seconda del Windows che stai utilizzando, allo stesso modo è molto semplice installarlo.

La stragrande maggioranza dei driver di database viene utilizzata attraverso un linguaggio di programmazione. Diciamo che per esempio le informazioni che abbiamo sui nostri computer sono disponibili nel database, ma quando abbiamo bisogno di visualizzarle e gestirle, usa un linguaggio di programmazione; Nel caso di MySQL, è accompagnato da php, che è noto come linguaggio di sviluppo web, lo stesso con cui viene sviluppato WordPress.

Supponiamo di poter consigliare, per velocità, di scaricare lo strumento XAMPP, disponibile per varie versioni di Windows. XAMPP viene fornito con una serie di componenti, tra cui abbiamo:

  • Apache: questo sarebbe un server web.
  • PHP: il linguaggio di sviluppo web.
  • Fillezilla: È incaricato di mobilitare i file.
  • Mercury: È il server di posta, che ha lo scopo di fare i test.
  • MySQL: Come accennato in precedenza, è il server del database.

Dopo aver installato XAMPP, potrai goderti tutti questi componenti, incluso MySQL, che puoi avviare direttamente e connettere all'interfaccia grafica, ecco perché XAMPP è estremamente utile, oltre ad avere gli altri componenti.

Avendo tutto questo chiaro, volevamo spiegare che all'interno delle nostre opzioni per i tipi di tabella per memorizzare i nostri dati, e parlando del campo dati numerico, all'interno di questo stesso abbiamo altri tipi, e dobbiamo sapere quale sarebbe il migliore, che darebbe noi l'opportunità di consumare meno spazio di archiviazione fisico e ci darà l'opportunità di dati che speriamo di memorizzare in quel campo. L'unico modo per comprendere queste domande sono i diversi tipi di dati che MySQL ci fornisce, di seguito forniremo tali informazioni per comprendere gli usi più appropriati di ciascun gruppo.

Ti invitiamo a vedere un corso intensivo sui tipi di dati in MySQL e tutto ciò che devi sapere al riguardo, nel video qui sotto. Non perdere l'occasione di imparare!:

Data numerica

La differenza che potremmo trovare tra un tipo di dato e un altro in MySQL è semplicemente l'intervallo di valori che può contenere. All'interno dei dati numerici dobbiamo vedere che possiamo distinguere due grandi rami: interi e decimali; Ora, vorremmo spiegare i tipi di dati numerici che possiamo avere a seconda della situazione che ci viene presentata e di cosa abbiamo bisogno:

numeri interi

La prima cosa che vogliamo spiegare a questo punto è che le opzioni che abbiamo per memorizzare questo tipo di dati sarebbero età, quantità e grandezze senza decimali. Vorremmo anche presentare un esempio per capire meglio che tipo di dati dovremmo scegliere per ogni campo:

Presentiamo TINYINT, un tipo di dati che ci consente di memorizzare un valore massimo di 127. Quindi, se abbiamo bisogno di definire un campo per l'età dei nostri utenti, questo è quello che potremmo usare, perché la normale fascia di età è all'interno di quel numero , e, a meno che non stiamo vivendo nel tempo dell'Antico Testamento biblico, nessuno biologicamente ha superato quel numero; Quindi no, questo tipo di dati non ci permette di memorizzare 567, ad esempio nemmeno 128, se il limite arriva a 127.

Ora, se vogliamo definire un campo per un identificatore di un grande mercato per vendere migliaia di cose diverse e varie, questo cambierebbe in modo esponenziale, chiaramente TINYINT non ci serve più, oltre a questo dovremmo sapere molto precisamente la quantità di articoli si vende, ma non solo con quello che abbiamo attualmente, ma cercando di fare una previsione per il nostro prossimo futuro, in questo modo il nostro sistema di storage non diventerà presto obsoleto.

Potremmo usare qualcosa come SMALLINT che ci permetterà di numerare fino a 32,000 articoli, ma se cambiamo l'esempio e passiamo da un mercato a un campo ID che dovrebbe essere utilizzato per una tabella clienti di una compagnia telefonica con 5 milioni di utenti, non poteva più avere di SMALLINT, ma di qualche altro come MEDIUMINT, e continuiamo, nel caso in cui la nostra azienda avesse 200 milioni di clienti, dovremmo utilizzare un campo di tipo INT. La questione cambia nel caso di diventare capricciosi e voler definire un campo che identifichi ciascuno degli esseri umani che vivono sul pianeta terra, allora dovremmo chiedere aiuto a un campo BIGNIT, poiché il tipo INT consente solo fino a duemila milioni di diversi pezzi di dati, e questo chiaramente non ci raggiungerebbe.

Vogliamo anche confermare l'esistenza di valori negativi, che potremmo trovare quando si vuole salvare il punteggio di una partita, o il segno sotto lo zero che un tavolo potrebbe segnare, tra le altre cose.

Valori senza segno

Vediamola così: avere un'età negativa non avrebbe alcun senso. Se esiste la possibilità di raddoppiare il limite del massimo valore positivo di ogni dato eliminando la possibilità che quel campo possa memorizzare valori negativi, raddoppieremmo il limite positivo di memorizzazione, e il campo di tipo TINYINT che normalmente permetteva di memorizzare valori ​​di 127, ora ti consentirà di memorizzare i valori da 0 a 255.

E come si definisce un campo senza segno? Tramite il modificatore UNSIGNED possiamo definire un campo numerico. Usando questo dovremmo trovare una colonna che legge Attributi e il valore di UNSIGNED e questo campo non può più contenere valori negativi, raddoppiando così la sua capacità di archiviazione.

Vale la pena ricordare che è importante che quando si definisce un campo nella colonna che troveremmo come Lunghezza scriviamo un numero coerente con la capacità di archiviazione che abbiamo appena scelto. Continuando con l'esempio dell'età, se stiamo lavorando con TINYNIT, dobbiamo mettere un tre come lunghezza, non un numero maggiore o minore.

Numeri con decimali

Prezzi, stipendi, importi del conto bancario, tra gli altri, siamo passati a valori numerici con decimali e abbiamo lasciato numeri interi, e nonostante questi tipi di dati siano chiamati "virgola mobile" perché la virgola separa la parte intera e la parte decimale, in realtà tra i tipi di dati MySQL, li memorizza separandoli con un punto; da qui avremmo tre tipi di dati: FLOAT, DOUBLE e DECIMAL.

FLOAT ci permetterà di memorizzare almeno il valore -999.99 e al massimo 999.99. Tieni conto che il segno - non conta, ma il punto che li separa, cioè il punto decimale, sì, ecco perché sarebbero sei cifre in totale, anche se notiamo che due di loro sono decimali; Ma abbiamo qualcosa chiamato intervallo di precisione semplice, che ci costringe ad avere quantità decimali comprese tra 0 e 24.

DOUBLE, invece, essendo il doppio della precisione, permette di definire solo il numero di decimali compreso tra 25 e 23. L'utilizzo di FLOAT, che è precisione semplice, potrebbe causare problemi di arrotondamento e perdita dei decimali rimanenti. Quello che resta da spiegare è DECIMAL, che è il migliore per memorizzare valori monetari dove è richiesta meno lunghezza ma massima precisione, e senza arrotondamenti, questo tipo di dati assegna una larghezza fissa al numero che memorizzerà. Le cifre totali massime per questo tipo di dati sono 64, di cui 30 è il numero massimo di decimali consentiti, più che sufficienti per memorizzare prezzi, salari e valute.

punto decimale-1

Dati alfanumerici

Infine lasciamo la categoria dei dati numerici per inserirne una nuova. Qui parleremo di memorizzare stringhe di caratteri, per spiegarlo meglio, e tra i tipi di dati in MySQL abbiamo i seguenti: CHAR, VARCHAR, BINARY, VARBINARY, TINYBLOB, TINYTEXT, BLOB, TEXT, MEDIUMBLOB, MEDIUMTEXT, LONGBLOB, LONGTEXT , ENUM e SET, ognuno ha le sue caratteristiche e i suoi vantaggi a seconda di quali dati vogliamo memorizzare.

Dati di data e ora

Questa sarebbe la nostra ultima categoria quando si tratta di tipi di dati in MYSQL. Vedremo che abbiamo diverse opzioni per memorizzare dati, date e orari di riferimento, vedendo la differenza tra l'uno e l'altro e i loro usi principali, in questo modo saremo in grado di scegliere il tipo appropriato di dati in ogni caso.

DATA

Questo tipo di dati in MySQL ci consente di memorizzare date in cui le prime quattro cifre appartengono all'anno, le due successive al mese e le ultime due al giorno, sebbene nei paesi di lingua spagnola siamo abituati a ordinare prima le date per il giorno, poi per il mese e poi per l'anno, per MYSQL è completamente il contrario.

È importante sapere che quando si legge un campo DATA, nonostante appaia con dei trattini che separano l'anno dal mese e il mese dal giorno, quando si inseriscono questi dati ci permette di fare tutto in modo continuo, ad esempio possiamo vederlo come questo: 2018-06-04 e inseriscilo come questo 20180604. L'intervallo di date che DATE ci consente di gestire è 1000-01-01 attraverso 9999-12-31.

A meno che non abbiamo qualcosa a che fare con un evento accaduto duemila anni fa e non abbiamo bisogno di esporlo, non avremo problemi con questo formato; d'altra parte, in vista del futuro abbiamo più opportunità, visto che con questo format abbiamo quasi raggiunto l'anno 10,000.

APPUNTAMENTO

Avere un campo definito come DATETIME ci permetterà di memorizzare le informazioni non di una data, ma di un momento, un istante di tempo, oltre alla data, anche il suo orario, prima avremmo l'anno, poi il mese, poi il giorno , quindi avremmo anche l'ora, i minuti e anche i secondi, il formato è simile a questo:

  • AAAA- MM- GG HH: MM: SS

La parte della data ha un intervallo simile a quello del tipo DATE (10,000 anni), ovvero da 1000/01/01 a 9999/12/31. La parte del programma andrebbe così: dalle 00:00:00 alle 23:53:53. Tutto completo sarebbe simile a questo: 1000-01-01 00:00:00 a 9999-12-31 23:59:59.

ORARIO

Qui ci è permesso di memorizzare ore, minuti e secondi, e sì, anche il tipo di dati precedente lo faceva, ma con TIME abbiamo un intervallo consentito che va da: -839: 59: 59 a 839: 59: 59; questo durerebbe circa 35 giorni avanti e indietro su una data corrente. Questo tipo di dati è ideale per calcolare i tempi trascorsi tra due momenti ravvicinati.

TIMESTAMP

Qui abbiamo un tipo di dati che potrebbe essere molto simile a DATETIME ma il suo formato e l'intervallo sono diversi, sebbene sia comunque utile per memorizzare una data e un'ora. Con il campo di questo formato ci possono essere presentate tre opzioni, la prima è: AAAA-MM-GG HH: MM: SS, la seconda è: AAAA-MM-GG e la terza è più semplice: AAAA-MM-GG .

Qui abbiamo la possibilità di avere una lunghezza possibile di 14, 8 o 6 cifre, tutto dipende dalle informazioni che forniamo. Questo formato non è né storico né futuristico come gli altri, poiché la gamma gestita da questo campo va solo dal 1970/01/01 all'anno 2037.

Inoltre, per curiosità, possiamo stabilire che il suo valore viene mantenuto aggiornato automaticamente ogni volta che viene inserito o aggiornato un record, in questo modo conserveremo sempre in questo campo la data e l'ora del nostro ultimo aggiornamento di quel dato, che è davvero l'ideale per prendere il controllo senza dover programmare nulla.

Se vogliamo definirlo da phpMyAdmin, tutto ciò che dobbiamo fare è selezionare in Attributi l'opzione che dice "in aggiornamento" CURRENT_TIMESTAMP e come valore predefinito CURRENT_TIMESTAMP. Campo il cui valore può essere aggiornato automaticamente durante l'inserimento o la modifica di un record.

Anno

Nel caso in cui necessitiamo definire un campo come ANNO, possiamo memorizzare un anno, utilizzando sia due che quattro cifre. Nel caso in cui lo facciamo in due cifre, da 70 a 99 (avendo da 70 a 99 capiremo che questi corrispondono all'intervallo di anni dal 1970 al 1999, e se abbiamo le cifre da 00 a 69 allora possiamo capire che si riferisce agli anni dal 2000 al 2069), in tal caso fornendo le quattro cifre allora troveremmo che l'intervallo possibile sarebbe esteso, passando quindi dal 1901 al 2155.

Abbiamo anche una possibilità in più, sebbene non correlata ai tipi di dati in MySQL, ma relativa a date e orari. Questa possibilità in più è quella di generare un valore di timestamp con la funzione PHP time (vogliamo ancora una volta chiarire che non stiamo più parlando di MYSQL, anche se è lecito confondersi perché hanno nomi abbastanza simili).

Potremmo comunque memorizzare quel valore in un campo INT a 10 cifre, in questo modo sarà molto semplice ordinare i valori del nostro campo (possiamo mettere la data di una notizia come esempio) e poi può mostrare quella data trasformando quel valore timestamp in qualcosa che possiamo rendere leggibile usando le funzioni di gestione della data di PHP.

data-ora-1

Spero che con questo articolo sui tipi di dati in MySQL, siamo stati in grado di rendere sufficientemente chiaro tutto ciò che volevamo spiegare e che tu abbia imparato a creare un database e una tabella in base a tutte le nostre informazioni, definendo i loro campi con totale precisione usando loro come tipi di dati e attributi, quindi, essendo nella capacità, o nelle condizioni, di iniziare a programmare correttamente, ora avendo un'idea chiara del formato esatto di cui avremo bisogno, che si adatta alla nostra esigenza in base a ciò che bisogna programmare.

Ti invitiamo a goderti un altro dei nostri articoli relativi alla programmazione: Polimorfismo nella programmazione orientata agli oggetti.


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Actualidad Blog
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.