· 4 years ago · Apr 03, 2021, 03:36 PM
1!/usr/bin/env python
2# -*- coding: utf-8 -*-
3#
4"""
5BD-API es una API estandar en Python
6MySQL --> mysql-connector-python PyMySQL MySQLdb
7PostreSQL --> psycopg pg8000
8SQLite --> sqlite3 (en la libreria std)
9SQL Server --> pymssql pyodbc
10Oracle cx_Oracle
11"""
12import sqlite3
13
14# abro una base de datos (si no existe la crea)
15conn = sqlite3.connect("productos.db")
16
17# Creo un cursor (que va a ejecutar las consultas SQL)
18cursor = conn.cursor()
19
20# crear una tabla productos:
21try:
22 cursor.execute("CREATE TABLE productos (\
23 Id INTEGER PRIMARY KEY AUTOINCREMENT,\
24 nombre TEXT NOT NULL,\
25 precio INTEGER NOT NULL);"
26 )
27except sqlite3.OperationalError:
28 print("Error en creación de la tabla productos ¿No ha sido creada anteriormente?")
29
30else:
31 # escribir cambio en una base de datos hago un commit
32 conn.commit()
33
34# creo una tupla con datos a cargar en la base
35datos = (
36 ("Teclado", 500),
37 ("Mouse", 290),
38 ("Monitor", 1500),
39 ("Parlantes", 1100)
40 )
41
42# cargo los datos en la base
43for nombre, precio in datos:
44 cursor.execute("INSERT INTO productos (nombre,precio) VALUES (?,?)",(nombre,precio))
45conn.commit()
46
47# hago una consulta (selecciono todos los datos)
48cursor.execute("SELECT * FROM productos")
49
50# almaceno en la variable datos_db todos los datos de la consulta anterior
51datos_db = cursor.fetchall()
52
53# imprimo los datos
54print(datos_db)
55
56# cerrar la base da datos
57conn.close()
58