1. O documento descreve como acessar e manipular bancos de dados MySQL usando Python.
2. Ele explica como instalar o módulo MySQLdb, conectar-se ao banco de dados, criar tabelas, inserir, ler, atualizar e excluir dados.
3. Também aborda operações como commits, rollbacks e tratamento de erros para garantir a consistência dos dados.
Construção de interfaces gráficas com TkinterMarcos Castro
Construção de interfaces gráficas utilizando o módulo Tkinter que é o módulo padrão para a construção de GUI's utilizando a linguagem Python. Essa apresentação foi feita no III PUG-PI (Python User Group do Piaui).
Python não força o programador a pensar em objetos, mas eles fazem parte da linguagem desde o início, incluindo conceitos avançados como sobrecarga de operadores, herança múltipla e introspecção. Com sua sintaxe simples, é muito natural aprender orientação a objetos em Python
This is the slides I used when I shared my humble insight on Django to the students in University of Taipei in 2016. Please feel free to correct me if there is anything wrong.
( ** Python Certification Training: https://www.edureka.co/python ** )
This Edureka PPT on Tkinter tutorial covers all the basic aspects of creating and making use of your own simple Graphical User Interface (GUI) using Python. It establishes all of the concepts needed to get started with building your own user interfaces while coding in Python.
Construção de interfaces gráficas com TkinterMarcos Castro
Construção de interfaces gráficas utilizando o módulo Tkinter que é o módulo padrão para a construção de GUI's utilizando a linguagem Python. Essa apresentação foi feita no III PUG-PI (Python User Group do Piaui).
Python não força o programador a pensar em objetos, mas eles fazem parte da linguagem desde o início, incluindo conceitos avançados como sobrecarga de operadores, herança múltipla e introspecção. Com sua sintaxe simples, é muito natural aprender orientação a objetos em Python
This is the slides I used when I shared my humble insight on Django to the students in University of Taipei in 2016. Please feel free to correct me if there is anything wrong.
( ** Python Certification Training: https://www.edureka.co/python ** )
This Edureka PPT on Tkinter tutorial covers all the basic aspects of creating and making use of your own simple Graphical User Interface (GUI) using Python. It establishes all of the concepts needed to get started with building your own user interfaces while coding in Python.
O Tkinter é um conjunto de widgets (componentes de interface gráfica) para Interface Gráfica com o Usuário(GUI). Uma das vantagens desse módulo gráfico é que ele já vem junto com o Python.
Python Class | Python Programming | Python Tutorial | EdurekaEdureka!
( Python Training : https://www.edureka.co/python )
This Edureka Python Class tutorial (Python Tutorial Blog: https://goo.gl/wd28Zr) will help you understand Python Classes and Objects with examples. It will also explain the concept of Abstract Classes and Inheritance in python.
Check out our Python Training Playlist: https://goo.gl/Na1p9G
This Python Programming tutorial video helps you to learn following topics:
1. Python Classes and Objects
2. Inheritance
3. Abstract Classes
OOPS concepts are one of the most important concepts in high level languages. Here in this PPT we will learn more about Object oriented approach in python programming which includes details related to classes and objects, inheritance, dat abstraction, polymorphism and many more with examples and code.
The names or objects which are accessible are called in-scope. The names or objects which are not accessible are called out-of-scope. The Python scope concept follows the LEGB (Local, Enclosing, Global and built-in) rule.
A presentation on "Rest api with Python" presented at Python Developers Nepal Meetup #6 by Santosh Ghimire. It focuses more on Django Rest Framework library.
Python provides numerous built-in functions that are readily available to us at the Python prompt. Some of the functions like input() and print() are widely used for standard input and output operations respectively.
Python 101: Python for Absolute Beginners (PyTexas 2014)Paige Bailey
If you're absolutely new to Python, and to programming in general, this is the place to start!
Here's the breakdown: by the end of this workshop, you'll have Python downloaded onto your personal machine; have a general idea of what Python can help you do; be pointed in the direction of some excellent practice materials; and have a basic understanding of the syntax of the language.
Please don't forget to bring your laptop!
Audience: "Python 101" is geared toward individuals who are new to programming. If you've had some programming experience (shell scripting, MATLAB, Ruby, etc.), then you'll probably want to check out the more intermediate workshop, "Python 101++".
** Python Certification Training: https://www.edureka.co/python **
This Edureka PPT on Python Projects will help you establish a foothold on Python by helping you assess and obtain skills which are used to design, develop and analyze projects built in Python.
1. Introduction to Python
2. Installation and Working with Python
3. Python Projects- 3levels
4. Practical approach - Code
Python Tutorial Playlist: https://goo.gl/WsBpKe
Blog Series: http://bit.ly/2sqmP4s
Follow us to never miss an update in the future:
Instagram: https://www.instagram.com/edureka_learning/
Facebook: https://www.facebook.com/edurekaIN/
Twitter: https://twitter.com/edurekain
LinkedIn: https://www.linkedin.com/company/edureka
Django Tutorial | Django Web Development With Python | Django Training and Ce...Edureka!
( Python Django Training - https://www.edureka.co/python-django )
This Edureka “Django Tutorial" introduces you to django along with a practical to create web application using python web framework. This video helps you to learn following topics:
1. Why Django framework?
2. What is Django?
3. Architecture: MVC-MVT Pattern
4. Hands On: Getting started with Django
5. Building blocks of Django
6. Project: A web application
Pip - Instalando Pacotes facilmente para Pythonpugpe
Apresentação realizada no IX Encontro do Grupo de Usuários de Python de Pernambuco por Luciano Rodrigues na Unibratec - 27/11/2010 - I Toró de Palestras
O Tkinter é um conjunto de widgets (componentes de interface gráfica) para Interface Gráfica com o Usuário(GUI). Uma das vantagens desse módulo gráfico é que ele já vem junto com o Python.
Python Class | Python Programming | Python Tutorial | EdurekaEdureka!
( Python Training : https://www.edureka.co/python )
This Edureka Python Class tutorial (Python Tutorial Blog: https://goo.gl/wd28Zr) will help you understand Python Classes and Objects with examples. It will also explain the concept of Abstract Classes and Inheritance in python.
Check out our Python Training Playlist: https://goo.gl/Na1p9G
This Python Programming tutorial video helps you to learn following topics:
1. Python Classes and Objects
2. Inheritance
3. Abstract Classes
OOPS concepts are one of the most important concepts in high level languages. Here in this PPT we will learn more about Object oriented approach in python programming which includes details related to classes and objects, inheritance, dat abstraction, polymorphism and many more with examples and code.
The names or objects which are accessible are called in-scope. The names or objects which are not accessible are called out-of-scope. The Python scope concept follows the LEGB (Local, Enclosing, Global and built-in) rule.
A presentation on "Rest api with Python" presented at Python Developers Nepal Meetup #6 by Santosh Ghimire. It focuses more on Django Rest Framework library.
Python provides numerous built-in functions that are readily available to us at the Python prompt. Some of the functions like input() and print() are widely used for standard input and output operations respectively.
Python 101: Python for Absolute Beginners (PyTexas 2014)Paige Bailey
If you're absolutely new to Python, and to programming in general, this is the place to start!
Here's the breakdown: by the end of this workshop, you'll have Python downloaded onto your personal machine; have a general idea of what Python can help you do; be pointed in the direction of some excellent practice materials; and have a basic understanding of the syntax of the language.
Please don't forget to bring your laptop!
Audience: "Python 101" is geared toward individuals who are new to programming. If you've had some programming experience (shell scripting, MATLAB, Ruby, etc.), then you'll probably want to check out the more intermediate workshop, "Python 101++".
** Python Certification Training: https://www.edureka.co/python **
This Edureka PPT on Python Projects will help you establish a foothold on Python by helping you assess and obtain skills which are used to design, develop and analyze projects built in Python.
1. Introduction to Python
2. Installation and Working with Python
3. Python Projects- 3levels
4. Practical approach - Code
Python Tutorial Playlist: https://goo.gl/WsBpKe
Blog Series: http://bit.ly/2sqmP4s
Follow us to never miss an update in the future:
Instagram: https://www.instagram.com/edureka_learning/
Facebook: https://www.facebook.com/edurekaIN/
Twitter: https://twitter.com/edurekain
LinkedIn: https://www.linkedin.com/company/edureka
Django Tutorial | Django Web Development With Python | Django Training and Ce...Edureka!
( Python Django Training - https://www.edureka.co/python-django )
This Edureka “Django Tutorial" introduces you to django along with a practical to create web application using python web framework. This video helps you to learn following topics:
1. Why Django framework?
2. What is Django?
3. Architecture: MVC-MVT Pattern
4. Hands On: Getting started with Django
5. Building blocks of Django
6. Project: A web application
Pip - Instalando Pacotes facilmente para Pythonpugpe
Apresentação realizada no IX Encontro do Grupo de Usuários de Python de Pernambuco por Luciano Rodrigues na Unibratec - 27/11/2010 - I Toró de Palestras
Apresentação da palestra realizada na Conferência Brasileira de PostgreSQL - PGBR em 2013 na cidade de Porto Velho - Rondônia - Brasil, que apresenta a integração da Linguagem Python com o banco de dados PostgreSQL usando psycopg2.
Palestra "relâmpago" (15 min) mostrando alguns detalhes de construção de DSLs em Python: decorators, sobrecarga de operadores, __getattr__, utilizando como exemplo a biblioteca de expectations e matchers Should-DSL (http://github.com/hugobr/should-dsl)
Neste tutorial apresentei usando Python Básico conceitos de como construir um sistema de recomendação por filtragem colaborativa.
Mutirão PyCursos:
Vídeo em: https://plus.google.com/u/0/events/c3hqbk20omt3r5uoq13gpk82i9g
O tema aborda a intereção entre Python e PostgreSQL.
É uma introdução de Python para profissionais PostgreSQL, além de diversos exemplos de códigos Python interagindo com o banco e também a linguagem procedural PL/Python.
Há demonstrações de vários pontos em comum e equivalências entre ambos.
Apresentação (palestra) feita no PGBR 2015 (19/11), em Porto Alegre, na UniRitter.
Slide da palestra sobre Python.
Programando em Python, 27 de Agosto às 19h (na Fuctura)
Por Richardson Lima, administrador de redes do grupo de pesquisas avançadas em redes de computadores, realidade virtual e multimídia na Universidade Federal de Pernambuco e desenvolvedor da comunidade Debian (sobre o curso)
Aqui são apresentados conceitos básicos a plataforma Java. Simples e rápido.
/**Depois que entrei no mundo Java, começei a procurar por conteúdo na internet para estudar, então me deparei com um ótimo site, http://www.argonavis.com.br, de um grande cara chamado Helder Rocha, que disponibiliza este mesmo conteúdo em seu site também. Obrigado pela ajuda a comunidade.*/
Doctrine é uma ferramenta de ORM (mapeamento objeto-relacional) para
PHP que sobrepõe a poderosa DBAL (camada de abstração de Banco de
Dados) PDO do PHP.
Um de seus principais recursos é a possibilidade adicional de escrever
consultas à base de dados através de um dialeto-SQL OO (orientado à
objeto) chamado DQL inspirado no HQL do Hibernate. Isto provê aos
desenvolvedores uma alternativa poderosa ao SQL que mantém o máximo de
flexibilidade sem qualquer necessidade de duplicação de código.
O tema da palestra é apresentar a ferramenta como uma solução ágil
para problemas recorrentes.
1. Python
Python
Acessando o Banco de Dados MySQL
ANTONIO SÉRGIO NOGUEIRA
PRESIDENTE PRUDENTE – SP
2009
1
2. Python
Sumário
1. Introdução..................................................................................3
2. Interface MySQL........................................................................3
3.Instalando o MySQLdb...............................................................3
4.Verificando se o MySQL está instalado......................................4
5.Vamos nos conectar ao banco de dados...................................4
6. Criando o banco de dados e as tabelas no MySQL..................4
7. Conectando-se ao banco de dados com o Python...................5
8. Criando as tabelas do banco de dados.....................................5
9. Inserindo dados nas tabelas.....................................................6
10. Executando passagem de parâmetro diretamente.................8
11. Operação de Leitua (READ)....................................................9
12. Operação de atualização ou alteração de dados..................10
13. Operação de exclusão de registros.......................................11
14. Manipulando Erros................................................................12
2
3. Python
1. Introdução: O Python permite a você acessar os bancos de dados mais comuns do
mercado, para isto temos um padrão de interface que é DB-API, a maioria das interfaces
de banco de dados adere a este padrão.
Podemos escolher o Banco de Dados que mais nos agrada já que a Python Database API
possui uma grande quantidade de servidores de banco de dados são eles:
• GadFly
• mSQL
• MySQL
• PostgreSQL
• Microsoft SQL Server 2000
• Informix
• Interbase
• Oracle
• Sybase
Você deve carregar o módulo DB API de cada banco de dado que você necessita acessar,
no nosso caso vamos a carregar o módulo do Database Mysql. Este Módulo nos permitirá
acessar o banco de dados através de estruturas Python. Neste API encontramos
comandos para abrir uma conexão, emitir comandos SQL, acessar procedimentos
armazenados e fechar conexão.
2.Interface MySQLdb – é a interface API para conexão com o servidor de banco de
dados MySQL no Python, ela é construída em cima do MySQL API C e implementa a
versão Python Database API v2.0. O programa MySQL (R) é um servidor robusto de
bancos de dados SQL (Structured Query Language – Linguagem Estruturada para
Pesquisas) muito rápido, multi-tarefa e multi-usuário. O Servidor MySQL pode ser usado
em sistemas de produção com alta carga e missão crítica bem como pode ser embutido
em programa de uso em massa. MySQL é uma marca registrada da MySQL AB. O
programa MySQL é de Licença Dupla. Os usuários podem escolher entre usar o
programa MySQL como um produto Open Source/Free Software sob os termos da GNU
General Public License (http://www.fsf.org/licenses/) ou podem comprar uma licença
comercial padrão da MySQL AB. O site web do MySQL (http://www.mysql.com/) dispõe
das últimas informações sobre o programa MySQL.
3. Instalando o MySQLdb – para instalar o módulo adote o seguinte procedimento:
− Instale o MySql ( Servidor de Banco de Dados), você tem que ter privilégio de
administrador.
− Vá até o seguinte link: http://sourceforge.net/projects/mysql-python
− Escolha a opção download.
− Escolha o pacote mysql-python.
− Agora escolha o pacote MySQL-python-1.2.2.win32-py2.5.exe. (Vamos usar o
Python 2.5
3
4. Python
− Pronto agora é só fazer o download.
− Feito o download clique em cima do arquivo é instale-o no diretório do Python
2.5.
4. Verificando se MySQLdb está instalado – Abra o IDLE e no shell digite o seguinte
comando:
>>>import MySQLdb
>>>
Se houver erro o shell emite uma informação, senão aparece o cursor >>>.
5. Vamos nos conectar ao Banco de Dados – antes de fazermos a conexão vamos
executar alguns comandos no mysql para criarmos:
• Base de dados
• A tabela de dados
• Para entender mais sobre banco de dados veja: Manual de Referência do MySQL :
http://downloads.mysql.com/docs/refman-4.1-pt.pdf
6. Criando o banco de dados e as tabelas no MySQL: mostraremos passo a passo a
criação de um banco de dados no MySQL.
• Acesse o MySQL: acesse o MySQL Command Line Client
• Forneça a Senha: aparecerá Enter Password: SENHA ( você vai acessá-lo como
root – administrador para não ter restrições de acesso).
• Criando um banco de dados: No MySQL os bancos de dados são implementados
como diretórios contendo arquivos que correspondem a tabelas do banco de
dados. Como ainda não existem tabelas no banco de dados criado, este comando
somente cria um subdiretório no diretório de dados do MySQL. Ocorrerá um erro se
o banco de dados já existir ou se você não tiver o privilégio apropriado.
CREATE DATABASE testedb;
• Acessando o Banco de Dados: USE Identifica o banco de dados default, o qual
será utilizado quando as referências a uma tabela não especificarem
explicitamente o nome do banco de dados.
USE testedb;
• Criando as tabelas de dados do banco: Criaremos a tabela Empregado com os
campos Nome, Idade, Sexo e Salário.
CREATE TABLE empregado (nome varchar(30) not null primary key, idade int,
sexo char(1), salario int);
• Verifique o que criou: digite os comandos para verificar as tabelas e as colunas:
SHOW TABLES; (tabelas do banco de dados)
SHOW COLUMNS FROM empregado; (colunas da tabela)
4
5. Python
7. Conectando-se ao banco de dados com o Python: Vamos primeiro nos conectar ao
banco de dados para executarmos os comandos.
Exemplo:
# file: conectardb.py
#!python25python
import MySQLdb
# Abre o banco de dados
db = MySQLdb.connect("localhost","root","senha","TESTEDB" )
# prepara um objeto cursor usando método cursor()
cursor = db.cursor()
# executa SQL usando método execute()
cursor.execute("SELECT VERSION()")
# Busca uma linha usando método fetchone()
data = cursor.fetchone()
print "Database version : %s " % data
# desconectando
db.close()
Você verá a seguinte mensagem:
Database version : 5.1.32-community
Ao estabelecer a conexão com a fonte de dados um objeto de Conexão é retornado e
salvo em db ou senão ele é setado para None. O objeto db é usado para criar um objeto
tipo cursor o qual é usado para executar queries. Finalmente encerramos a conexão e
liberamos os recursos.
8. Criando as tabelas do banco de dados: Uma vez que estabelecemos a conexão,
estamos preparados para criar e gravar tabelas através do método execute do cursor
criado.
Exemplo:
# file:Criatabela.py
#!python25python
import MySQLdb
5
6. Python
# Abre conexão
db = MySQLdb.connect("localhost","root","senha","TESTEDB" )
# prepara o objeto cursor
cursor = db.cursor()
# Elimina tabela se ela existir usando o comando SQL através do método execute.
method.
cursor.execute("DROP TABLE IF EXISTS EMPREGADO")
# Cria a tabela requerida
sql = """CREATE TABLE EMPREGADO (
NOME CHAR(30) NOT NULL,
IDADE INT,
SEXO CHAR(1),
SALARIO FLOAT )"""
cursor.execute(sql)
# desconectando
db.close()
Esta mensagem aparece se a tabela não existir.
Warning (from warnings module):
File "C:/Python25/criatabela.py", line 13
cursor.execute("DROP TABLE IF EXISTS EMPREGADOS")
Warning: Unknown table 'empregados'
9. Inserindo dados nas tabelas: uma vez criada a tabela podemos agora inserir dados
nela através do comando SQL INSERT, que criará um registro na tabela empregado.
Exemplo:
#file:inseredado.py
#!python25python
import MySQLdb
# ABRE CONEXÃO
db = MySQLdb.connect("localhost","root","senha","TESTEDB" )
# prepara metodo cursor
cursor = db.cursor()
6
7. Python
# Prepara comando SQL
sql = """INSERT INTO EMPREGADO(NOME,
IDADE, SALARIO, SEXO)
VALUES ('Sergio', 22, 2000,'M')"""
try:
# Executa comando SQL
cursor.execute(sql)
# Faz as mudanças no database
db.commit()
except:
#Desfaz mudanças na tabela em caso de erro
db.rollback()
# desconecta
db.close()
Outro exemplo usando agora comando SQL Insert dinâmico.
#file: inseredadod.py
#!python25python
import MySQLdb
# Abre conexão com o banco de dados
db = MySQLdb.connect("localhost","root","senha","TESTEDB" )
# prepare o objeto curso com o método cursor.
cursor = db.cursor()
# Prepare comando SQL para inserir registro no BD.
sql = "INSERT INTO EMPREGADO(NOME,
IDADE, SEXO, SALARIO)
VALUES ('%s', '%d', '%c', '%d' )" %
('MARCOS', 30, 'M', 1000)
try:
# Execute comando SQL
cursor.execute(sql)
# EfetuarPerpetar as mudanças no database
db.commit()
7
8. Python
except:
# desfazer em caso de erro
db.rollback()
# desconecta
db.close()
10. Executando passagem de parâmetro diretamente – o exemplo a seguir é uma
outra forma de executar o programa e passar parâmetros diretamente.
Exemplo:
#file: inseredadod1.py
#!python25python
import MySQLdb
# Abre conexão com o banco de dados
db = MySQLdb.connect("localhost","root","senha","TESTEDB" )
# prepare o objeto curso com o método cursor.
cursor = db.cursor()
nome='Antonio'
idade=34
sexo='M'
salario=1350
try:
# executa sql
cursor.execute('insert into empregado values("%s","%d","%c","%d")'%
(nome,idade,sexo,salario))
# Efetuar as mudanças no database
db.commit()
except:
# desfazer em caso de erro
db.rollback()
# desconecta
db.close()
8
9. Python
11. Operação de Leitua (READ): ler um banco de dados significa buscar alguma
informação útil no banco de dados. Após a conexão ser estabelecida, nós estamos
prontos para pesquisar no banco de dados. Nós podemos procurar um único registro
através do método fetchone() ou múltiplos registros através do método fetchall().
fetchone() - este método encontra a próxima linha do conjunto de uma busca. Um objeto é
retornado quando o objeto cursor é usado na busca em uma tabela.
fetchall() - este método busca todas as linha de um conjunto de uma busca. Se algumas
linhas já foram extraídas, o método retorna as linhas restantes.
rowcount() - método de apenas leitura e retorna o número de linhas afetadas pelo método
execute().
Exemplo: este exemplo retorna todos os registros da tabela empregado que tenham
salário maior que 1000.
# file:ledadosdb.py
#!python25python
import MySQLdb
# abre conexão
db = MySQLdb.connect("localhost","root","senha","TESTEDB" )
# objeto cursor
cursor = db.cursor()
# SQL de busca de dados.
sql = "SELECT * FROM EMPREGADO
WHERE SALARIO > '%d'" % (1000)
try:
# Executa SQL
cursor.execute(sql)
# Busca todas as linhas de uma tabela
results = cursor.fetchall()
for row in results:
fname = row[0]
age = row[1]
sex = row[2]
income = row[3]
# Imprime resultado
print "Nome=%s,Idade=%d,Sexo=%s,Salario=%d" %
9
10. Python
(fname, age, sex, income )
except:
print "Erro na busca."
# desconecta
db.close()
Resultado da pesquisa na tabela cadastrada:
Nome=Sergio,Idade=22,Sexo=M,Salario=2000
Nome=Antonio,Idade=34,Sexo=M,Salario=1350
12. Operação de atualização ou alteração de dados: a operação UPDATE sobre um
banco de dado significa atualizar ou modificar um ou mais registros já disponíveis no
banco de dados. O procedimento seguinte atualizará todos os registros que tenham sexo
'M'. Nós iremos incrementar a idade de todos as pessoas de sexo M.
Exemplo:
# file:ledadosdb.py
#!python25python
import MySQLdb
# abre conexão
db = MySQLdb.connect("localhost","root","senha","TESTEDB" )
# objeto cursor
cursor = db.cursor()
# SQL de busca de dados.
sql = "SELECT * FROM EMPREGADO
WHERE SALARIO > '%d'" % (1000)
try:
# Executa SQL
cursor.execute(sql)
# Busca todas as linhas de uma tabela
results = cursor.fetchall()
for row in results:
fname = row[0]
10
11. Python
age = row[1]
sex = row[2]
income = row[3]
# Imprime resultado
print "Nome=%s,Idade=%d,Sexo=%s,Salario=%d" %
(fname, age, sex, income )
except:
print "Erro na busca."
# desconecta
db.close()
Resultado:
Nome=Sergio,Idade=23,Sexo=M,Salario=2000
Nome=Antonio,Idade=35,Sexo=M,Salario=1350
13. Operação de exclusão de registros: quando queremos apagar alguns registros
usamos o operação DELETE. O programa abaixo apaga todos os registros de empregado
onde a idade é menor do que 25.
Exemplo:
# file: apagadb.py
#!python25python
import MySQLdb
# abre conexão
db = MySQLdb.connect("localhost","root","senha","TESTEDB" )
# prepare o objeto cursor
cursor = db.cursor()
# Prepare o comando SQL
sql = "DELETE FROM EMPREGADO WHERE IDADE < '%d'" % (25)
try:
# Executa comando SQL
cursor.execute(sql)
11
12. Python
# Efetua modificação do banco
db.commit()
except:
# Desfaz a modificação
db.rollback()
# desconecta
db.close()
Quando falamos em banco de dados, falamos em consistência dos dados e para que isso
aconteça temos que ter as seguintes propriedades: atomicidade, consistência, isolação,
durabilidade. Para que isto aconteça temos dois métodos no Python DB API 2.0 committ e
rollback. Committ dá o sinal verde para efetuar a transação e após este comando nenhum
erro pode atrapalhar esta modificação. Já o comando Rollback desfaz a transação se um
erro ocorrer antes do committ. O comando de desconexão serve para encerrar a
transação e desfazer as mudanças(committ) não efetuadas.
14. Manipulando Erros: algumas fontes de erro são falha de conexão como por exemplo
chamar um método de busca para um comando cancelado, etc. Em seguida temos a
tabela de erros que deve ser confirmada para cada banco utilizado.
Exceção Descrição
Warning Usado para emitir mensagens não fatais. Subclasse de StandardError.
Error Classe Base para erros. Subclasse de StandardError.
Usado para erros no módulo de banco de dados, não do database. Suclasse de
InterfaceError
Error.
DatabaseError Usado em erro da base de dados. Subclasse de Error.
DataError Subclass of DatabaseError that refers to errors in the data.
Subclasse de DatabaseError que refere-se aos erros como perda de conexão.
OperationalError
Esses erros são normalmente externos ao controle do script Python.
Subclasse de DatabaseError para situações que danificariam a integridade
IntegrityError
relacional.
Subclasse de DatabaseError que refere-se aos erros internos do módulo de
InternalError
database, como cursor não ativo.
Subclasse de DatabaseError que refere-se a erros como nome errado da tabela
ProgrammingError
ou coisas que podem seguramente ser reprovados.
Subclasse de DatabaseError que refere-se a tentativa de chamadas não
NotSupportedError
suportadas funcionalmente.
12
13. Python
Referência Bibliográfica:
Prates Rubens, Guia de Consulta Rápida MySQL, 2000 - Novatec Editora Ltda.
Python - MySQL Database Access, maio 2009,
http://www.tutorialspoint.com/python/python_database_access.htm
Manual de Referência do MySQL 4.1, 2009, MySQL AB
HOWTO Use Python in the web, http://www.python.org/doc/2.6.2/howto/webservers.html
13