Download clase-16-SQL-Python
Document related concepts
no text concepts found
Transcript
E S C U E L A D E C I E N C I A S E M P R E S R I A L E S PYTHON & SQL Paul Leger http://pleger.cl Introducción • Python es un lenguaje de propósito general, donde es posible desarrollar aplicaciones de software • SQL es un DSL para base de datos • SQLAlchemy es una modulo de Python para que nos permite usar SQL en Python SQLAlchemy Sin ORM • SQLAlchemy es ideal para usar con Object Relational Mapping • Por la falta de programación orientada a objeto, no exigirá ORM en esta versión del cursos • Usaremos las funciones básicas de SQLAlchemy Crear Conexión a una BD • Importando función para conexión: from sqlalchemy import create_engine • Creando conexión: engine = create_engine("sqlite:///baseDato.sqlite", echo=TRUE) connection = engine.connect() • Cerrando conexión: connection.close() Ejecutando Consultas (1/2) • Ejecutando consultas no “select”: connection.execute(Consulta en SQL) Por ejemplo: connection.execute(“INSERT INTO Dueno VALUES (3899123,'Sheldon','Cooper’);”) • Ejecutando consultas: results = connection.execute(“select * from table”). fetchall() for tupla in results: print tupla[0],tupla[1],tupla[2] #o simplemente escribir tupla Ejecutando Consultas (2/2) results = connection.execute(“select * from table”). fetchall() for tupla in results: for atributo in tupla: print atributo Transacciones transaction = connection.begin() connection.execute("insert into x (a, b) values (1, 2)") Si la consulta se ejecuta como es deseado, puedes realizar transaction.commit() Y si no se ejecuto, puedes realizar: transaction.rollback() E S C U E L A D E C I E N C I A S E M P R E S R I A L E S Consultas?