Python SQLite - Drop Table
È possibile rimuovere un'intera tabella utilizzando l'istruzione DROP TABLE. Devi solo specificare il nome della tabella che devi eliminare.
Sintassi
Di seguito è riportata la sintassi dell'istruzione DROP TABLE in PostgreSQL:
DROP TABLE table_name;
Esempio
Supponiamo di aver creato due tabelle con il nome CRICKETERS e EMPLOYEES utilizzando le seguenti query:
sqlite> CREATE TABLE CRICKETERS (
First_Name VARCHAR(255), Last_Name VARCHAR(255), Age int,
Place_Of_Birth VARCHAR(255), Country VARCHAR(255)
);
sqlite> CREATE TABLE EMPLOYEE(
FIRST_NAME CHAR(20) NOT NULL, LAST_NAME CHAR(20), AGE INT,
SEX CHAR(1), INCOME FLOAT
);
sqlite>
Ora se verifichi l'elenco delle tabelle utilizzando il file .tables comando, puoi vedere le tabelle create sopra (elenco) come -
sqlite> .tables
CRICKETERS EMPLOYEE
sqlite>
La seguente istruzione elimina la tabella denominata Employee dal database:
sqlite> DROP table employee;
sqlite>
Poiché hai eliminato la tabella Employee, se recuperi nuovamente l'elenco di tabelle, puoi osservare solo una tabella al suo interno.
sqlite> .tables
CRICKETERS
sqlite>
Se provi a eliminare di nuovo la tabella Employee, poiché l'hai già eliminata, verrà visualizzato un messaggio di errore che dice "nessuna tabella di questo tipo" come mostrato di seguito -
sqlite> DROP table employee;
Error: no such table: employee
sqlite>
Per risolvere questo problema, è possibile utilizzare la clausola IF EXISTS insieme all'istruzione DELTE. Ciò rimuove la tabella se esiste altrimenti salta l'operazione DLETE.
sqlite> DROP table IF EXISTS employee;
sqlite>
Eliminare una tabella usando Python
È possibile eliminare una tabella ogni volta che è necessario, utilizzando l'istruzione DROP di MYSQL, ma è necessario fare molta attenzione durante l'eliminazione di qualsiasi tabella esistente perché i dati persi non verranno recuperati dopo l'eliminazione di una tabella.
Esempio
Per eliminare una tabella da un database SQLite3 utilizzando python, richiamare il file execute() sull'oggetto cursore e passargli l'istruzione drop come parametro.
import sqlite3
#Connecting to sqlite
conn = sqlite3.connect('example.db')
#Creating a cursor object using the cursor() method
cursor = conn.cursor()
#Doping EMPLOYEE table if already exists
cursor.execute("DROP TABLE emp")
print("Table dropped... ")
#Commit your changes in the database
conn.commit()
#Closing the connection
conn.close()
Produzione
Table dropped...