Python MySQL - Crea tabella

L'istruzione CREATE TABLE viene utilizzata per creare tabelle nel database MYSQL. Qui è necessario specificare il nome della tabella e la definizione (nome e tipo di dati) di ciascuna colonna.

Sintassi

Di seguito è riportata la sintassi per creare una tabella in MySQL:

CREATE TABLE table_name(
   column1 datatype,
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
);

Esempio

La seguente query crea una tabella denominata EMPLOYEE in MySQL con cinque colonne, ovvero FIRST_NAME, LAST_NAME, AGE, SEX e, INCOME.

mysql> CREATE TABLE EMPLOYEE(
   FIRST_NAME CHAR(20) NOT NULL,
   LAST_NAME CHAR(20),
   AGE INT,
   SEX CHAR(1),
   INCOME FLOAT);
Query OK, 0 rows affected (0.42 sec)

L'istruzione DESC fornisce la descrizione della tabella specificata. Usando questo puoi verificare se la tabella è stata creata o meno come mostrato di seguito -

mysql> Desc Employee;
+------------+----------+------+-----+---------+-------+
| Field      | Type     | Null | Key | Default | Extra |
+------------+----------+------+-----+---------+-------+
| FIRST_NAME | char(20) | NO   |     | NULL    |       |
| LAST_NAME  | char(20) | YES  |     | NULL    |       |
| AGE        | int(11)  | YES  |     | NULL    |       |
| SEX        | char(1)  | YES  |     | NULL    |       |  
| INCOME     | float    | YES  |     | NULL    |       |
+------------+----------+------+-----+---------+-------+
5 rows in set (0.07 sec)

Creazione di una tabella in MySQL utilizzando Python

Il metodo chiamato execute () (invocato sull'oggetto cursore) accetta due variabili -

  • Un valore String che rappresenta la query da eseguire.

  • Un parametro args facoltativo che può essere una tupla o una lista o un dizionario, che rappresenta i parametri della query (valori dei segnaposto).

Restituisce un valore intero che rappresenta il numero di righe interessate dalla query.

Una volta stabilita una connessione al database, è possibile creare tabelle passando la query CREATE TABLE al file execute() metodo.

In breve, per creare una tabella usando python -

  • Importare mysql.connector pacchetto.

  • Crea un oggetto connessione usando il mysql.connector.connect() , passando il nome utente, la password, l'host (predefinito opzionale: localhost) e il database (opzionale) come parametri ad esso.

  • Crea un oggetto cursore richiamando il file cursor() metodo sull'oggetto connessione creato sopra.

  • Quindi, eseguire l' istruzione CREATE TABLE passandola come parametro al fileexecute() metodo.

Esempio

L'esempio seguente crea una tabella denominata Employee nel database mydb.

import mysql.connector

#establishing the connection
conn = mysql.connector.connect(
   user='root', password='password', host='127.0.0.1', database='mydb'
)

#Creating a cursor object using the cursor() method
cursor = conn.cursor()

#Dropping EMPLOYEE table if already exists.
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")

#Creating table as per requirement
sql ='''CREATE TABLE EMPLOYEE(
   FIRST_NAME CHAR(20) NOT NULL,
   LAST_NAME CHAR(20),
   AGE INT,
   SEX CHAR(1),
   INCOME FLOAT
)'''
cursor.execute(sql)

#Closing the connection
conn.close()