学习内容:
1.基本sql语句
2.在python下操作sqlite数据库
重点
1.基本的sql语句
select rowid,* from 表名#从自己所需要的表中获取所有字段
insert into 表名(表内字段名)values(对应字段内容)#在表中对应字段插入数值
update 表名 set 字段名=所需内容 where 条件(所需改变内容的特征)#更改表中某一内容
delete from 表名 where 条件(所需改变内容的特征)#删除某一内容
以上就是一些基本的sql语句,更多语句可以参考专门的sql操作文件
2.python操作sql文件
1)创建一个所需的.db文件
2)打开pycharm,在右上角可以找到database,连接表和pycharm
3)输入指令
在python下面有专门操作需要的内置sqlite3
import sqlite3#操作前必须导入
conn=sqlite3.connect("数据文件名")#操作前必须连接对应的文件,放入一个变量,这样就可以随时调用
c=conn.cursor()#游标操作,方便语句的执行
sql="select * form 表名"#sql语句显示所有内容
c.execute(sql)#因为变量C在之前我们已经对其进行游标操作,在cursor下有execute的语句,可直接调用,这样就完成了显示所有文件操作
插入操作
sql="insert into 表名(表内字段名)values(对应字段内容)"#插入操作,这种操作最后的结果可在表中观察到,但必须提交
c.execute(sql)
c.commit()#将结果提交到表中
c.close()#关闭sql文件,这样在打开表刷新一下就会出现更改后的数据
更新操作
sql="update 表名 set 字段名=所需内容 where 条件(所需改变内容的特征)"#更改表中某一内容
c.execute(sql)
c.commit()
c.close()
删除操作
sql="delete from 表名 where 条件(所需改变内容的特征)"#删除某一内容
c.commit()
c.close()
3.参数化查询,防止sql注入
1)?操作
这个操作需要用到元组型数据
我们事先创建一个元组放入所需数据,再通过指令获取想要的内容
name=("tom",)#元组数据
sql="select * from 表名 where name=?"#name表中的关键属性
c.execute(sql,name)#完成输入
2):关键字 操作
这种操作针对字典表类型
insert into 表名(表内字段名)values(对应字段内容)where (:name,:mobile,:age)
c.execute(sql,{"name":"tom","mobile":"1789","age":"20"})#字典表的关键字必须与上面的定义格式对应