Python com MySQL: conectar, criar banco de dados, tabela, inserir (exemplos)

Índice:

Anonim

Para trabalhar com MySQL usando Python, você deve ter algum conhecimento de SQL

Antes de mergulhar, vamos entender

O que é MySQL?

MySQL é um banco de dados Open-Source e um dos melhores tipos de RDBMS (Relational Database Management System). O co-fundador do MySQLdb é Michael Widenius, e também o nome do MySQL deriva da filha de Michael.

Como instalar o MySQL

Instale o MySQL no Linux / Unix:

Baixe o pacote RPM para Linux / Unix do site oficial: https://www.mysql.com/downloads/

No terminal, use o seguinte comando

rpm -i 
Example rpm -i MySQL-5.0.9.0.i386.rpm

Para verificar no Linux

mysql --version

Instale o MySQL no Windows

Baixe o banco de dados exe do MySQL do site oficial e instale normalmente a instalação normal do software no Windows. Consulte este tutorial, para obter um guia passo a passo

Instale a biblioteca de conectores MySQL para Python

Para Python 2.7 ou inferior, instale usando pip como:

pip install mysql-connector

Para Python 3 ou versão superior, instale usando pip3 como:

pip3 install mysql-connector 

Teste a conexão do banco de dados MySQL com Python

Para testar a conexão do banco de dados aqui, usamos o conector MySQL pré-instalado e passamos as credenciais para a função connect () , como host, nome de usuário e senha.

Sintaxe para acessar o MySQL com Python:

import mysql.connectordb_connection = mysql.connector.connect(host="hostname",user="username",passwd="password")

Exemplo,

import mysql.connectordb_connection = mysql.connector.connect(host="localhost",user="root",passwd="root")print(db_connection)

Resultado:

Aqui, a saída mostra a conexão criada com sucesso.

Criação de banco de dados em MySQL usando Python

A sintaxe para criar um novo banco de dados em SQL é

CREATE DATABASE "database_name"

Agora criamos banco de dados usando Python em MySQL

import mysql.connectordb_connection = mysql.connector.connect(host= "localhost",user= "root",passwd= "root")# creating database_cursor to perform SQL operationdb_cursor = db_connection.cursor()# executing cursor with execute method and pass SQL querydb_cursor.execute("CREATE DATABASE my_first_db")# get list of all databasesdb_cursor.execute("SHOW DATABASES")#print all databasesfor db in db_cursor:print(db)

Resultado:

Aqui, a imagem acima mostra que o banco de dados my_first_db foi criado

Crie uma tabela em MySQL com Python

Vamos criar uma tabela simples "aluno" que possui duas colunas.

Sintaxe SQL:

CREATE TABLE student (id INT, name VARCHAR(255))

Exemplo:

import mysql.connectordb_connection = mysql.connector.connect(host="localhost",user="root",passwd="root",database="my_first_db")db_cursor = db_connection.cursor()#Here creating database table as student'db_cursor.execute("CREATE TABLE student (id INT, name VARCHAR(255))")#Get database table'db_cursor.execute("SHOW TABLES")for table in db_cursor:print(table)

Resultado:

 ('student',) 

Crie uma tabela com chave primária

Vamos criar uma tabela Employee com três colunas diferentes. Vamos adicionar uma chave primária na coluna id com a restrição AUTO_INCREMENT

Sintaxe SQL,

CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))

Exemplo,

import mysql.connectordb_connection = mysql.connector.connect(host="localhost",user="root",passwd="root",database="my_first_db")db_cursor = db_connection.cursor()#Here creating database table as employee with primary keydb_cursor.execute("CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))")#Get database tabledb_cursor.execute("SHOW TABLES")for table in db_cursor:print(table)

Resultado:

('employee',) ('student',)

Tabela ALTER no MySQL com Python

O comando Alter é usado para modificar a estrutura da tabela em SQL. Aqui iremos alterar a tabela de Alunos e adicionar uma chave primária ao campo id .

Sintaxe SQL,

ALTER TABLE student MODIFY id INT PRIMARY KEY

Exemplo,

import mysql.connectordb_connection = mysql.connector.connect(host="localhost",user="root",passwd="root",database="my_first_db")db_cursor = db_connection.cursor()#Here we modify existing column iddb_cursor.execute("ALTER TABLE student MODIFY id INT PRIMARY KEY")

Resultado:

Aqui abaixo você pode ver que a coluna id foi modificada.

Insira a operação com MySQL em Python:

Vamos realizar a operação de inserção na tabela do banco de dados MySQL que já criamos. Vamos inserir dados da tabela STUDENT e da tabela EMPLOYEE.

Sintaxe SQL,

INSERT INTO student (id, name) VALUES (01, "John")INSERT INTO employee (id, name, salary) VALUES(01, "John", 10000)

Exemplo,

import mysql.connectordb_connection = mysql.connector.connect(host="localhost",user="root",passwd="root",database="my_first_db")db_cursor = db_connection.cursor()student_sql_query = "INSERT INTO student(id,name) VALUES(01, 'John')"employee_sql_query = " INSERT INTO employee (id, name, salary) VALUES (01, 'John', 10000)"#Execute cursor and pass query as well as student datadb_cursor.execute(student_sql_query)#Execute cursor and pass query of employee and data of employeedb_cursor.execute(employee_sql_query)db_connection.commit()print(db_cursor.rowcount, "Record Inserted")

Resultado:

 2 Record Inserted