嵌入式系统关系数据库
数据类型: NULL(None),INTEGER(int), REAL(float), TEXT(str), BLOB(bytes)
流程
import sqlite3
try:
#建立数据库连接
con=sqlite3.connect(table_name)
#创建游标对象
cursor=con.cursor()
#执行SQL操作(CRUD)
sql='SELECT id FROM t_name WHERE id=? '#查询
#'INSERT INTO T_NAME(attr1,attr2) VALUES(?,?)'
#'UPDATE T_NAME SET ATTR1=?, ATTR2=? WHERE ATTR=?'
#'DELETE FROM T_NAME WHERE ATTR=?'
cursor.execute(sql,[parameter])
#提取结果集/提交数据库事务(失败则回滚)
result_set=cursor.fetchall()
#con.commit()
except sqlite3.Error as e:
#con.rollback()
finally:
#关闭游标
if cursor:
cursor.close()
#关闭数据库连接
if con:
con.close()
SQL语句若采用拼接参数实现,可能受到SQL注入攻击
eg: ‘DELETE FROM T_NAME WHERE ATTR=’ + 123 or 1=1