¿Cómo almacenar funciones de Python en una tabla Sqlite?

SQLite es un sistema de base de datos relacional contenido en una biblioteca C que funciona con una sintaxis muy similar a SQL. Se puede fusionar con Python con la ayuda del módulo sqlite3 . La biblioteca estándar de Python sqlite3 fue desarrollada por Gerhard Häring. Ofrece una interfaz SQL compatible con la especificación DB-API 2.0 descrita por PEP 249. 

Para utilizar este módulo y establecer la conexión con la base de datos:- 

      1. Importe el módulo sqlite3 y cree el objeto que representa la base de datos.

import sqlite3
conn = sqlite3.connect('function.db')

       2. Para ejecutar comandos SQL, construya un objeto de cursor y llame al método execute() .

c = conn.cursor()
c.execute('''CREATE TABLE student
             (Number REAL,stud_name TEXT)''')

Nota: Para rastrear las operaciones a nivel de base de datos, necesitamos descargar la base de datos del navegador SQLite.

Pasos para almacenar la función Python en la tabla SQLite: 

  • Paso 1) Importe sqlite3 y cree el objeto de la base de datos .

Python3

import sqlite3
conn = sqlite3.connect('function.db')

Aquí hemos importado el módulo sqlite3 y hemos inicializado la base de datos function.db . Esta instrucción creará la base de datos si la base de datos no existe y si existe la base de datos que tiene el mismo nombre definido, se moverá más. 

  • Paso 2) Cree un objeto Cursor y llame a su método execute() para crear la tabla.

Python3

c = conn.cursor()
c.execute('''CREATE TABLE pyfuction
             (func_defination TEXT)''')

Después de inicializar la base de datos, debemos crear el objeto del cursor usando conn.cursor() . El cursor nos permite ejecutar los comandos SQL.

  • Paso 3) Escriba la función en la siguiente sintaxis.

Python3

code = """ def gfg(): print("GeeksforGeeks") """

Como tenemos que almacenar la definición de la función dentro de la tabla, tenemos que escribir function en la sintaxis anterior. 

  • Paso 4) Inserte la función en la tabla pyfunction .

Python3

c.execute("INSERT INTO pyfuction (func_defination) VALUES (?)",
          (code,))
conn.commit()

El comando SQL “INSERT INTO pyfuction (func_defination) VALUES (?)”, (código) inserta el valor del código variable dentro de la tabla pyfunction en forma de texto. Luego use el método commit() para guardar los cambios.

A continuación se muestran algunos ejemplos que almacenan funciones de Python en una tabla Sqlite.

Ejemplo 1: Almacenamiento de la función gfg() en una tabla sqlite llamada pyfunction .

Python3

# Importing required library
import sqlite3
  
# Initializing the database
conn = sqlite3.connect('function.db')
  
# Creating cursor object
c = conn.cursor()
  
# Creating table
c.execute('''CREATE TABLE pyfuction
             (func_defination TEXT)''')
  
# Storing a python function in the Sqlite table
code = """ def gfg(): print("GeeksforGeeks")"""
c.execute("INSERT INTO pyfuction (func_defination) VALUES (?)",
          (code))
  
# Terminating the transaction
conn.commit()

Producción:

Ejemplo 2: aquí hay otro ejemplo de almacenamiento de una función llamada add() en la tabla pyfunction .

Python3

# Importing required library
import sqlite3
  
# Initializing the database
conn = sqlite3.connect('function.db')
  
# Creating cursor object
c = conn.cursor()
  
# Creating table
c.execute('''CREATE TABLE pyfuction
             (func_defination TEXT)''')
  
# Storing a python function in the Sqlite table
code = """ def add(): print((10+20)/2)"""
c.execute("INSERT INTO pyfuction (func_defination) VALUES (?)",
          (code,))
  
# Displaying Content of the table
c.execute("SELECT * FROM pyfuction;")
print(c.fetchall())
  
# Terminating the transaction
conn.commit()

Producción:

Ejemplo 3: Almacenamiento de dos funciones, maximum() y gfg() en la tabla pyfunction .

Python3

# Importing required library
import sqlite3
  
# Initializing the database
conn = sqlite3.connect('function.db')
  
# Creating cursor object
c = conn.cursor()
  
# Creating table
c.execute('''CREATE TABLE pyfuction
             (func_defination TEXT)''')
  
# Storing a python function in the Sqlite table
def1 = """ def maximum(): print(max(2,5))"""
c.execute("INSERT INTO pyfuction (func_defination) VALUES (?)",
          (def1,))
  
# Storing another python function in the Sqlite table
def2 = """ def gfg(): print("GeeksforGeeks")"""
c.execute("INSERT INTO pyfuction (func_defination) VALUES (?)",
          (def2,))
  
# Displaying Content of the table
c.execute("SELECT * FROM pyfuction;")
print(c.fetchall())
  
# Terminating the transaction
conn.commit()

Producción:

Publicación traducida automáticamente

Artículo escrito por joshisakshi04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *