Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- #
- """
- Existen diferentes proveedores de SGBD y distintos tipos de BBDD
- a) SQL : BBDD estructuradas, utilizan SQL-- > MySQL, Oracle, PostgreSQL,
- SQL Server, SQLite, MariaDB (fork de MySQL)
- b) NO SQL ono estructuradas: MongoDB
- Existe una API estandar en Python para trabajar con BBDD: DB-API
- BIBLIOTECAS
- sqlite: sqlite3 (nativa)
- MySQL: mysql-connector-python, PyMySQL, MySQLdb
- PostgreSQL: psycopg, pg8000
- SQL Server: pymssql, pyodbc
- Oracle: cx_Oracle
- import sqlite3
- # me conecto a una base de datos (si no existe, la crea)
- conn = sqlite3.connect("base.sqlite")
- # para hacer una consulta, necesito un cursor
- cursor = conn.cursor()
- # ejecuto una consulta de creación de tabla
- cursor.execute("CREATE TABLE IF NOT EXISTS personas (nombre TEXT, edad NUMERIC)")
- # "Guardo" los cambios
- conn.commit()
- # creo una tupla de datos para insertar en la tabla
- datos = (
- ("Ana",33),
- ("Juan",76),
- ("Luisa",34)
- )
- # ejecuto la consulta de INSERCION de datos
- for nombre,edad in datos:
- cursor.execute("INSERT INTO personas VALUES(?,?)",(nombre,edad))
- conn.commit()
- # leo los datos y los imprimo en pantalla
- cursor.execute("SELECT * FROM personas")
- lista_datos = cursor.fetchall()
- print(lista_datos)
- # cierro la conexión con la base de datos
- conn.close()
- """
- # Ejemplo con MySQL
- # pip install pymysql
- import pymysql
- from pprint import pprint
- conn = pymysql.connect(
- host="localhost",
- user="root",
- passwd="",
- db="backup"
- )
- cursor = conn.cursor()
- # ejecuto la consulta de INSERCION de datos
- # for nombre,edad in datos:
- # cursor.execute("INSERT INTO personas VALUES(%s, %s)",(nombre,edad))
- # conn.commit()
- # leo los datos y los imprimo en pantalla
- cursor.execute("SELECT * FROM empleados")
- lista_datos = cursor.fetchall()
- pprint(lista_datos)
- # cierro la conexión con la base de datos
- conn.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement