Manipolare SQL in Python | Come usare MySQL da Python

Contenuti

Questo post è stato pubblicato come parte del Blogathon sulla scienza dei dati.

introduzione

Cosa ho usato?: Prompt dei comandi di Anaconda, Editor di testo sublime, COSÌ: finestre 10, Riga di comando SQL

Devi creare un ambiente virtuale. Come mai?

  1. L'ambiente virtuale, Come suggerisce il nome, è diverso dal vero ambiente Python.
  2. Per manipolare SQL, dovrai installare o apportare modifiche ad alcuni pacchetti. L'ambiente virtuale garantirà che queste modifiche non influiscano su altri progetti, l'installazione principale di Python o anche persone che lavorano sulla stessa macchina.
  3. Perché, un ambiente virtuale ti fornisce la tua copia di Python in modo che tu possa apportare modifiche, installa o disinstalla i pacchetti liberamente.

Creare un ambiente virtuale


(Ho eseguito quanto segue nel prompt dei comandi di Anaconda 🙂

conda create – il mio nome (qui myenv è il nome del tuo ambiente virtuale)

Per attivare questo ambiente, utilizzo-

conda attivare myenv 
##Questo creerà una directory chiamata myenv
SQL per Python: attivare l'ambiente virtuale

Nota Mi scusi (base) cambia in (mio figlio) quando attivi il tuo ambiente.

Nello stesso modo, per disabilitare questo ambiente, utilizzo

conda disattivare myenv

Installa i pacchetti richiesti:

Esegui questo comando:

pip install mysql-connector-python

Il pacchetto richiesto è installato.

Scriveremo il nostro codice Python per eseguire query SQL in Sublime Text Editor. Per eseguire file Python Sublime Text dal prompt dei comandi, devi creare una variabile d'ambiente. Se non sai come farlo, puoi consultare è.

Ora, quando scrivi sublime al prompt dei comandi, l'editor di testo sublime si aprirà da lì. Crea un nuovo file Python. Ho chiamato il mio file HelloWorld.py

Esegui un comando di prova stampare (“Ciao mondo”) per assicurarti che il tuo file sia in esecuzione.

Connettiti a MySQL

import mysql.connector
db = mysql.connector.connect(host='localhost',
utente='nomeutente',
passwd='tuopass',
database='fifa19', 
porta='3307',
auth_plugin='mysql_native_password')
Stampa(db)

Qui,
1. scrivi il tuo nome utente e password MySQL negli argomenti nome utente e password.
2. Il database avrà il nome del database che si desidera utilizzare.
3. La porta MySQL è 3307. Se il tuo porto è 3306, non è necessario specificarlo esplicitamente.
4. auth_plugin = 'mysql_native_password': questo argomento è specificato per evitare errori di autenticazione.
5. pprint

Questo crea un oggetto MySQL.connector.connection

SQL da Python - Connettore MySQL

Visualizza i dati del database

Noi usiamo il cursore metodo per creare un oggetto cursore utilizzato per eseguire istruzioni per comunicare con i database MySQL.

Il seguente codice è scritto nell'editor di testo.

crs = db.cursor()
crs.execute("Selezionare * dal limite dei giocatori 10”)
risultato = crs.fetchall()
pprint(risultato)

Qui,
1. crs è il nome del mio oggetto cursore.
2. correre() accetta query SQL come parametro ed esegue la query data.
3. La variabile risultato memorizza il set di risultati di prendilo () metodo.
4. prendilo () metodo restituisce il set di risultati della query come tuple.
5. pprint () stampa l'output in un modo più formattato e leggibile. [Puoi importare pprint con: da pprint importa pprint]

Salva ed esegui il file tramite il prompt dei comandi. L'output sarà simile al seguente:

SQL da Python: visualizzazione dei dati del database

Creazione tabella

Scrivi il seguente codice nell'editor di testo:

cmd="crea contatti tabella(Nome Varchar(255),TelefonoNo int(12))"
Stampa(cmd)
crs.execute(cmd)

Nota che eseguiamo tutte le query sull'oggetto cursore.

Inserisci query

Il codice per il comando di inserimento è simile a questo:

insert_command= “inserisci nei contatti(Nome,tel.) valori(%S,%S)"
valori=(“Sejal”,987654321)
crs.execute(inserire_comando,valori)
db.commit()

Qui, db.commit è obbligatorio () eseguire ogni volta che apportiamo modifiche al database. Questo metodo viene utilizzato per garantire che le modifiche al database siano coerenti.

Esegui il file e puoi vedere che i dati sono stati incorporati nella tua tabella. Puoi verificarlo usando la riga di comando SQL.

Mesa

Query di ricerca

Il codice per i record di ricerca è simile a questo:

crs.execute("seleziona Nome da giocatori dove Nazionalità='Stati Uniti'")
risultato = crs.fetchall()
pprint(risultato)

Qui, stiamo cercando di trovare nomi di giocatori di nazionalità statunitense.

L'output sarà simile al seguente:

Query di ricerca

Elimina query

Il codice per eliminare i record è simile a questo:

crs.execute(“cancella dai contatti”)
db.commit()

Ricordare, usamos db.commit () per assicurarsi che le modifiche si riflettano nel database.

Dopo aver eseguito il file, puoi vedere che i record sono stati rimossi dal database.

Commettere

Spero che tu abbia imparato qualcosa in un modo relativamente più semplice su come manipolare SQL in Python!!

Iscriviti alla nostra Newsletter

Non ti invieremo posta SPAM. Lo odiamo quanto te.