一、SQLite简介
SQLite是一款轻量级的数据库,旨在提供一个基本的关系型数据库管理系统。SQLite一般用于本地数据存储,例如存储应用程序的用户信息、位置信息等。SQLite与Python的结合可以用于开发移动应用、网络服务器、桌面应用程序等。
Python中自带了SQLite3模块,可以非常方便地操作SQLite数据库。
二、安装SQLite3
在Python中,SQLite3是内置的模块,因此不需要额外的安装。需要注意的是,如果使用的Python版本不是3.4以上版本,需要先安装SQLite3。
# 安装SQLite3 $ sudo apt-get install sqlite3 libsqlite3-dev
三、连接SQLite数据库
连接SQLite数据库可以通过Python的 connect()方法实现。
import sqlite3 # 连接到SQLite数据库 conn = sqlite3.connect('example.db')
四、创建表格
在SQLite数据库中创建表格可以使用Python的 execute()方法执行SQL语句。
import sqlite3 # 连接到SQLite数据库 conn = sqlite3.connect('example.db') # 创建表格 conn.execute('''CREATE TABLE COMPANY (ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL);''') print("Table created successfully") # 关闭数据库连接 conn.close()
五、插入数据
使用Python的 execute()方法执行SQL语句插入数据。
import sqlite3 # 连接到SQLite数据库 conn = sqlite3.connect('example.db') # 插入数据 conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \ VALUES (1, 'Paul', 32, 'California', 20000.00 )") conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \ VALUES (2, 'Allen', 25, 'Texas', 15000.00 )") conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \ VALUES (3, 'Teddy', 23, 'Norway', 20000.00 )") conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \ VALUES (4, 'Mark', 25, 'Rich-Mond', 65000.00 )") # 提交数据库执行操作 conn.commit() print("Records created successfully") # 关闭数据库连接 conn.close()
六、查询数据
使用Python的 execute()方法执行SQL语句查询数据。
import sqlite3 # 连接到SQLite数据库 conn = sqlite3.connect('example.db') # 查询数据 cursor = conn.execute("SELECT id, name, address, salary from COMPANY") for row in cursor: print("ID = ", row[0]) print("NAME = ", row[1]) print("ADDRESS = ", row[2]) print("SALARY = ", row[3], "\n") # 关闭数据库连接 conn.close()
七、更新数据
使用Python的 execute()方法执行SQL语句更新数据。
import sqlite3 # 连接到SQLite数据库 conn = sqlite3.connect('example.db') # 更新数据 conn.execute("UPDATE COMPANY set SALARY = 25000.00 where ID = 1") conn.commit() print("Total number of rows updated :", conn.total_changes) # 查询更新后的结果 cursor = conn.execute("SELECT id, name, address, salary from COMPANY") for row in cursor: print("ID = ", row[0]) print("NAME = ", row[1]) print("ADDRESS = ", row[2]) print("SALARY = ", row[3], "\n") # 关闭数据库连接 conn.close()
八、删除数据
使用Python的 execute()方法执行SQL语句删除数据。
import sqlite3 # 连接到SQLite数据库 conn = sqlite3.connect('example.db') # 删除数据 conn.execute("DELETE from COMPANY where ID = 2;") conn.commit() print("Total number of rows deleted :", conn.total_changes) # 查询删除后的结果 cursor = conn.execute("SELECT id, name, address, salary from COMPANY") for row in cursor: print("ID = ", row[0]) print("NAME = ", row[1]) print("ADDRESS = ", row[2]) print("SALARY = ", row[3], "\n") # 关闭数据库连接 conn.close()