Come creare un database in MySQL (Creare MySQL Tabelle)

Passaggi per creare un database in MySQL

Crea database in due modi

1) Eseguendo una semplice query SQL

2) Utilizzando il forward engineering in MySQL banco di lavoro

As Principiante SQL, esaminiamo prima il metodo di query.

Come creare un database in MySQL

Ecco come creare un database in MySQL:

CREATE DATABASE è il comando SQL utilizzato per creare un database in MySQL.

Immagina di dover creare un database con il nome "film". È possibile creare un database in MySQL eseguendo il seguente comando SQL.

CREATE DATABASE movies;

Nota: puoi anche usare il comando CREATE SCHEMA invece di CREATE DATABASE

Ora miglioriamo la nostra query SQL aggiungendo più parametri e specifiche.

SE NON ESISTE

Un singolo MySQL il server potrebbe avere più database. Se non sei l'unico ad accedere allo stesso MySQL server o se hai a che fare con più database c'è la probabilità di tentare di creare un nuovo database con il nome di un database esistente. SE NON ESISTE lascia che tu istruisca MySQL server per verificare l'esistenza di un database con un nome simile prima di creare il database.

Quando SE NON ESISTE il database utilizzato viene creato solo se il nome specificato non è in conflitto con il nome di un database esistente. Senza l'uso di SE NON ESISTE MySQL genera un errore.

CREATE DATABASE IF NOT EXISTS movies;

Collazione e set di caratteri

Confronto è insieme di regole utilizzate a confronto.Molte persone usano MySQL per memorizzare dati diversi dall'inglese. I dati sono archiviati in MySQL utilizzando un set di caratteri specifico. Il set di caratteri può essere definito a diversi livelli, vale a dire, server, database, tabella e colonne.

È necessario selezionare le regole di confronto che a loro volta dipendono dal set di caratteri scelto.

Ad esempio, il set di caratteri Latin1 utilizza il file latin1_swedish_ci collazione che è l'ordine svedese senza distinzione tra maiuscole e minuscole.

CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci

La procedura migliore quando si utilizzano lingue locali come l'arabo, il cinese ecc. è selezionare il set di caratteri Unicode (utf-8) che ha diverse regole di confronto o semplicemente attenersi alle regole di confronto predefinite utf8-general-ci.

È possibile trovare l'elenco di tutte le regole di confronto e i set di caratteri qui

È possibile visualizzare l'elenco dei database esistenti eseguendo il seguente comando SQL.

SHOW DATABASES

Come creare una tabella in MySQL

Il comando CREATE TABLE viene utilizzato per creare tabelle in un database

Crea tabella in MySQL

Le tabelle possono essere create utilizzando CREA TABELLA istruzione e in realtà ha la seguente sintassi.

CREATE  TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;

QUI

  • “CREATE TABLE” è quello responsabile della creazione della tabella nel database.
  • "[IF NOT EXISTS]" è facoltativo e crea la tabella solo se non viene trovato alcun nome di tabella corrispondente.
  • “`fieldName`” è il nome del campo e “data Type” definisce la natura dei dati da archiviare nel campo.
  • "[parametri opzionali]" informazioni aggiuntive su un campo come "AUTO_INCREMENT", NOT NULL ecc.

MySQL Crea esempio di tabella

Di seguito è riportato un MySQL esempio per creare una tabella nel database:

CREATE  TABLE IF NOT EXISTS `MyFlixDB`.`Members` (
  `membership_number` INT  AUTOINCREMENT ,
  `full_names` VARCHAR(150) NOT NULL ,
  `gender` VARCHAR(6) ,
  `date_of_birth` DATE ,
  `physical_address` VARCHAR(255) ,
  `postal_address` VARCHAR(255) ,
  `contact_number` VARCHAR(75) ,
  `email` VARCHAR(255) ,
  PRIMARY KEY (`membership_number`) )
ENGINE = InnoDB;

Ora vediamo cosa MySQLi tipi di dati sono. Puoi usarne uno qualsiasi a seconda delle tue necessità. Dovresti sempre cercare di non sottovalutare o sovrastimare la potenziale gamma di dati quando crei un database.

TIPI DI DATI

I tipi di dati definiscono la natura dei dati che possono essere archiviati in una particolare colonna di una tabella

MySQL ha 3 principali categorie di tipi di dati, vale a dire

  1. Numerico,
  2. Testo
  3. Appuntamento.

Tipi di dati numerici

I tipi di dati numerici vengono utilizzati per memorizzare valori numerici. È molto importante assicurarsi che l'intervallo dei dati sia compreso tra i limiti inferiore e superiore dei tipi di dati numerici.

PICCOLOINT( ) Da -128 a 127 normale
Da 0 a 255 SENZA SEGNO.
PICCOLOINT( ) Da -32768 a 32767 normale
Da 0 a 65535 SENZA SEGNO.
MEDIOINT( ) Da -8388608 a 8388607 normale
Da 0 a 16777215 SENZA SEGNO.
INT( ) Da -2147483648 a 2147483647 normale
Da 0 a 4294967295 SENZA SEGNO.
BIGINT( ) Da -9223372036854775808 a 9223372036854775807 normale
Da 0 a 18446744073709551615 SENZA SEGNO.
FLOAT Un piccolo numero approssimativo con un punto decimale mobile.
DOPPIO( , ) Un numero grande con un punto decimale mobile.
DECIMALE( , ) Un DOUBLE memorizzato come stringa, consentendo un punto decimale fisso. Scelta per memorizzare valori di valuta.

Tipi di dati di testo

Come suggerisce il nome della categoria del tipo di dati, questi vengono utilizzati per memorizzare valori di testo. Assicurati sempre che la lunghezza dei tuoi dati testuali non superi la lunghezza massima.

CAR( ) Una sezione fissa lunga da 0 a 255 caratteri.
VARCHAR( ) Una sezione variabile lunga da 0 a 255 caratteri.
PICCOLO TESTO Una stringa con una lunghezza massima di 255 caratteri.
TESTO Una stringa con una lunghezza massima di 65535 caratteri.
BLOB Una stringa con una lunghezza massima di 65535 caratteri.
TESTO MEDIO Una stringa con una lunghezza massima di 16777215 caratteri.
BLOB MEDIO Una stringa con una lunghezza massima di 16777215 caratteri.
TESTO LUNGO Una stringa con una lunghezza massima di 4294967295 caratteri.
LUNGO BLOB Una stringa con una lunghezza massima di 4294967295 caratteri.

Appuntamento

DATA AAAA-MM-DD
APPUNTAMENTO AAAA-MM-GG HH: MM: SS
TIMESTAMP AAAAMMGGHHMMSS
ORARIO OO:MM:SS

Oltre a quanto sopra ci sono altri tipi di dati MySQL.

ENUM Per memorizzare il valore di testo scelto da un elenco di valori di testo predefiniti
SET Viene utilizzato anche per memorizzare valori di testo scelti da un elenco di valori di testo predefiniti. Può avere più valori.
BOOL Sinonimo di TINYINT(1), utilizzato per memorizzare valori booleani
BINARIO Similmente a CHAR, la differenza è che i testi sono memorizzati in formato binario.
VARBINARIO Simile a VARCHAR, la differenza è che i testi sono archiviati in formato binario.

Ora vediamo una query per creare una tabella che contiene dati di tutti i tipi. Studialo e identifica come viene definito ciascun tipo di dati nella tabella di creazione seguente MySQL esempio.

CREATE TABLE`all_data_types` (
    `varchar` VARCHAR( 20 )  ,
    `tinyint` TINYINT  ,
    `text` TEXT  ,
    `date` DATE  ,
    `smallint` SMALLINT  ,
    `mediumint` MEDIUMINT  ,
    `int` INT  ,
    `bigint` BIGINT  ,
    `float` FLOAT( 10, 2 )  ,
    `double` DOUBLE  ,
    `decimal` DECIMAL( 10, 2 )  ,
    `datetime` DATETIME  ,
    `timestamp` TIMESTAMP  ,
    `time` TIME  ,
    `year` YEAR  ,
    `char` CHAR( 10 )  ,
    `tinyblob` TINYBLOB  ,
    `tinytext` TINYTEXT  ,
    `blob` BLOB  ,
    `mediumblob` MEDIUMBLOB  ,
    `mediumtext` MEDIUMTEXT  ,
    `longblob` LONGBLOB  ,
    `longtext` LONGTEXT  ,
    `enum` ENUM( '1', '2', '3' )  ,
    `set` SET( '1', '2', '3' )  ,
    `bool` BOOL  ,
    `binary` BINARY( 20 )  ,
    `varbinary` VARBINARY( 20 )
) ENGINE= MYISAM ;

migliori pratiche

  • Utilizzare lettere maiuscole per le parole chiave SQL, ad esempio "DROP SCHEMA IF EXISTS `MyFlixDB`;"
  • Termina tutti i comandi SQL utilizzando il punto e virgola.
  • Evitare di utilizzare spazi nei nomi di schemi, tabelle e campi. Utilizzare invece i caratteri di sottolineatura per separare i nomi di schemi, tabelle o campi.

Come creare MySQL diagramma ER del banco di lavoro forward engineering

MySQL banco di lavoro dispone di utilità che supportano l'ingegneria avanzata. Ingegneria avanzata è un termine tecnico per descrivere il processo di tradurre automaticamente un modello logico in un attrezzo fisico.

Abbiamo creato un Diagramma ER sulla nostra Tutorial sulla modellazione ER. Ora utilizzeremo quel modello ER per generare gli script SQL che creeranno il nostro database.

Creazione del database MyFlix dal modello MyFlix ER

Passo 1) Apri il modello ER del database MyFlix

Apri il modello ER del database MyFlix creato nel tutorial precedente.

Passo 2) Seleziona l'ingegnere avanzato

Fare clic sul menu della banca dati. Seleziona l'ingegnere avanzato

Creare MySQL diagramma ER del banco di lavoro

Passo 3) Opzioni di connessione

La finestra successiva ti consente di connetterti a un'istanza di MySQL server. Fare clic sull'elenco a discesa delle connessioni memorizzate e selezionare l'host locale. Fare clic su Esegui

Creare MySQL diagramma ER del banco di lavoro

Passo 4) Seleziona le opzioni mostrate di seguito

Seleziona le opzioni mostrate di seguito nella procedura guidata visualizzata. Fare clic su Avanti

Creare MySQL diagramma ER del banco di lavoro

Passo 5) Mantenere le selezioni predefinite e fare clic su Avanti

La schermata successiva mostra il riepilogo degli oggetti nel nostro diagramma EER. Il nostro DB MyFlix ha 5 tabelle. Mantenere le selezioni predefinite e fare clic su Avanti.

Creare MySQL diagramma ER del banco di lavoro

Passo 6) RevVisualizza lo script SQL

Viene visualizzata la finestra mostrata di seguito. Questa finestra consente di visualizzare in anteprima il Script SQL per creare il nostro database. Possiamo salvare gli script in un file *.sql” o copiare gli script negli appunti. Fare clic sul pulsante successivo

Creare MySQL diagramma ER del banco di lavoro

Passo 7) Impegnati nel progresso

La finestra mostrata di seguito viene visualizzata dopo aver creato con successo il database sull'elemento selezionato MySQL istanza del server.

Creare MySQL diagramma ER del banco di lavoro

  • La creazione di un database implica la conversione del modello di progettazione del database logico nel database fisico.
  • MySQL supporta una serie di tipi di dati per valori numerici, date e stringhe.
  • Il comando CREATE DATABASE viene utilizzato per creare un database
  • Il comando CREATE TABLE viene utilizzato per creare tabelle in un database
  • MySQL il workbench supporta il forward engineering che prevede la generazione automatica di script SQL dal modello di database logico che possono essere eseguiti per creare il database fisico

Il database insieme ai dati fittizi è allegato. Utilizzeremo questo DB per tutti i nostri ulteriori tutorial. Importa semplicemente il DB MySQL Banco di lavoro per iniziare

Fare clic qui per scaricare MyFlixDB