如何在 Sqlite 表中存储Python函数?
SQLite 是一个包含在 C 库中的关系数据库系统,它的工作方式与 SQL 非常相似。它可以在sqlite3模块的帮助下与Python融合。 Python标准库sqlite3由 Gerhard Häring 开发。它提供符合 PEP 249 描述的 DB-API 2.0 规范的 SQL 接口。
要使用此模块并建立与数据库的连接:-
1.导入sqlite3模块并创建代表数据库的对象。
import sqlite3
conn = sqlite3.connect('function.db')
2.要执行 SQL 命令,请构造一个游标对象并调用execute()方法。
c = conn.cursor()
c.execute('''CREATE TABLE student
(Number REAL,stud_name TEXT)''')
注意:为了跟踪数据库级别的操作,我们需要下载 SQLite 浏览器数据库。
在 SQLite 表中存储Python函数的步骤:
- 步骤 1)导入sqlite3并创建数据库对象。
Python3
import sqlite3
conn = sqlite3.connect('function.db')
Python3
c = conn.cursor()
c.execute('''CREATE TABLE pyfuction
(func_defination TEXT)''')
Python3
code = """ def gfg(): print("GeeksforGeeks") """
Python3
c.execute("INSERT INTO pyfuction (func_defination) VALUES (?)",
(code,))
conn.commit()
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()
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()
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()
这里我们导入了sqlite3模块,并初始化了数据库函数.db 。如果数据库不存在,则此指令将创建数据库,并且如果存在与定义的名称相同的数据库,则它将进一步移动。
- 步骤 2)创建一个 Cursor 对象并调用它的 execute() 方法来创建表。
蟒蛇3
c = conn.cursor()
c.execute('''CREATE TABLE pyfuction
(func_defination TEXT)''')
初始化数据库后,我们必须使用conn.cursor()创建游标对象。游标允许我们执行 SQL 命令。
- 步骤 3)用以下语法编写函数。
蟒蛇3
code = """ def gfg(): print("GeeksforGeeks") """
由于我们必须将函数定义存储在表中,因此我们必须按照上述语法编写函数。
- 步骤 4)将函数插入pyfunction table 。
蟒蛇3
c.execute("INSERT INTO pyfuction (func_defination) VALUES (?)",
(code,))
conn.commit()
SQL命令“INSERT INTO pyfuction (func_defination) VALUES (?)”, (code)以文本的形式将变量code的值插入表pyfunction内。然后使用commit()方法保存更改。
下面是一些将Python函数存储在 Sqlite 表中的示例?
示例 1:将gfg()函数存储在名为pyfunction的 sqlite 表中。
蟒蛇3
# 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()
输出:
示例 2:这是在pyfunction表中存储名为add()的函数的另一个示例。
蟒蛇3
# 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()
输出:
示例 3:在pyfunction表中存储两个函数, maximum()和gfg() 。
蟒蛇3
# 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()
输出: