· 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