SQLite基本语句
一:
1.SQLite数据库是一种嵌入式数据库,它的数据就是一个scores.db
2.经常被集成到各种应用程序中,甚至ios、Android、Mac OS、Linux
3.Python中内置了SQLite数据库,直接使用
4.数据库:关系型数据库,一个数据库有多少张表,表和表之间通过主外键进行关联
5.Python中操作Sqlite数据库
a.获取connection
b.连接之后需要打开游标cursor,通过cursor执行sql语句
c.关闭连接,释放资源
二:增,删,改,查数据库
1.查数据库
eg:
import sqlite3 #导入模块sqlite3db_file = 'nishi.db' #数据库文件
conn = sqlite3.connect(db_file) #获取与数据库的链接
sql = 'select * from scores' #编写sql语句
cur = conn.cursor() #执行sql语句
cur.execute(sql)
print(cur.fetchall()) #打印结果
#关闭资源
cur.close()
conn.close()
2.编辑数据库
import sqlite3 #导入模块sqlite3
db_file = 'nishi.db' # 数据库文件def insert_score_date(): #插入数据conn = sqlite3.connect(db_file) # 获取与数据库的链接cur = conn.cursor() # 打开游标#插入sql语句:# insert into 表名 (列1,列2,列3,....) values(?,?,?....)sql = 'insert into scores(name,math_score,chinese_score) ' \' values(?,?,?)'date = ('赵五',89.9,78.2) #插入数据时必须使用元组类型cur.execute(sql,date)conn.commit()#执行插入时,需要进行显示提交数据,否则数据无法同步到数据库中#关闭资源cur.close()conn.close()insert_score_date()
3.删除数据库中的记录,根据某种条件进行操作 where
import sqlite3 #导入模块sqlite3
db_file = 'nishi.db' # 数据库文件
def delete_score_date():conn = sqlite3.connect(db_file) #获取链接cur = conn.cursor() #打开游标进行cursor,进行sql语句sql = 'delete from scores where id=?' #delete from +表名 where 列=?# 构建元组数据id = (3,)cur.execute(sql,id)conn.commit() #进行提交#关闭资源cur.close()conn.close()delete_score_date()
4.修改数据,根据条件修改数据
import sqlite3 #导入模块sqlite3
db_file = 'nishi.db' # 数据库文件#根据某种条件修改数据
def update_score_data():conn = sqlite3.connect(db_file)cur = conn.cursor()sql = 'update scores set math_score = ?,chinese_score = ? where id =2'#修改sql语句,update表名 set 列名=? ....where条件data = (99,99,) #元组数据进行封装cur.execute(sql,data)conn.commit()cur.close()conn.close()update_score_data()
5.查询数据
import sqlite3 #导入模块sqlite3
db_file = 'nishi.db' # 数据库文件#根据某种条件修改数据
def select_socre_all():conn = sqlite3.connect(db_file)cur = conn.cursor()sql = 'select * from scores'#查询语句 select 列名 *表示所有列 from 表示 表名cur.execute(sql)print(cur.fetchall()) #打印数据cur.close()conn.close()select_socre_all()
6.插入多条数据
import sqlite3 #导入模块sqlite3
db_file = 'nishi.db' # 数据库文件score_list = [('Jack',80,9),('BOb',75,95),('Rose',60,70),('Sunny',86,96),('Ada',79,89)]
def insert_mult_data():conn = sqlite3.connect(db_file)cur = conn.cursor()sql = 'insert into scores(name,math_score,chinese_score) ' \'values(?,?,?)'#执行sql语句,插入多条数据使用的函数是executemanycur.executemany(sql,score_list)conn.commit() #进行同步cur.close()conn.close()return cur.rowcountprint(insert_mult_data())
5
资料查询网站:
https://www.w3school.com.cn/sql/sql_orderby.asp












![[JAVA数据结构]堆](https://img-blog.csdnimg.cn/d397a5a0e2444038bf048690b33f674c.png)






