1.写在前面
数据库是一种体型紧凑的嵌入式开源数据库软件,这意味着它没有独立的维护进程,所有的维护工作都由程序自身完成。它仅通过一个文件来存储整个数据库,使用起来极为便捷。尽管在功能上与一些大型数据库相比存在一定差距,但其最大的优势在于操作的简便性。然而,在性能方面,它并不输给其他同类产品。虽体型微小,麻雀却具备所有器官,且全面支持了sql-92的大部分规范,包括诸如连接查询、子查询以及多条件筛选等复杂查询功能。
因其采用C语言编写且体积微小,故频繁被整合入各类应用软件之中,甚至包括iOS及App平台在内的多个应用场景中亦能实现集成。
就内置了,所以,在中使用,不需要安装任何东西,直接使用。
在使用之前首先明确一些关于数据库和数据库操作的基本概念
该数据库模块设定了统一的接口规范,因此在进行数据库操作时,遵循着一套共同的流程,大致可以概括为以下几个步骤:
以con作为数据库连接对象的创建,cur作为游标对象的创建,通过cur执行SQL语句【删除操作】,随后关闭cur和conn,进行基础操作配置。
import sqlite3
## the database path and name
filepath = r'./data/datebese.db'
## tablename
tablename = 'table_test'
连接数据库,构建连接对象及游标对象。
def dbConnect():
建立数据库连接,使用sqlite3库,连接文件路径为filepath。
cur = con.cursor()
return conn, cur
## disconnect
def dbDisconnect(coon,cur):
cur.sursor()
conn.close()
增删查改操作
##增
def insertData(sensor_id, zigbee_id):
con, c = dbConnect()
c.execute(若该表不存在,则创建名为sensorid_zigbeeid的表。
sensor_id CHAR(4) NOT NULL,
该字段为ZigBee标识符,字符长度固定为4位,为必填项,且具有唯一性约束。
PRIMARY KEY (sensor_id)
)''')
c.execute(执行插入操作至名为{0}的表,具体值为:第一个问号代表的值,第二个问号代表的值。对表名进行格式化处理,包含(传感器ID,ZigBee ID)这一对元素。
con.commit()
print(向表格{2}中插入数据项{0}和数据项{1}。对传感器编号、ZigBee编号以及表名进行格式化处理。
dbDisconnect(con)
## 删
## Delete a record in a table
def dropData(sensor_id):
con, c = dbConnect()
c.execute(执行删除操作,针对表{},条件是传感器标识符等于指定的问号占位符。对表格名称进行格式化处理,同时包含(传感器ID,)。
con.commit()
print(删除数据库中的该条目及其对应的zigbee_id信息。.format(sensor_id))
dbDisconnect(con)
##Delete a table
def dropTable():
con, c = dbConnect()
c.execute("DROP TABLE IF EXISTS {}".format(tablename))
con.commit()
print("drop {0} table".format(tablename))
dbDisconnect(con)
## 查
def getAllDataFromDB():
con, c = dbConnect()
data = c.execute('SELECT * FROM {}'.format(tablename))
print("(sensor_id, zigbee_id)")
for i in data:
print(i)
dbDisconnect(con)
print(请将表{0}中的所有数据打印出来。.format(tablename))
def getZigbeeidAndSensorid():
con, c = dbConnect()
data = c.execute("SELECT sensor_id FROM {0}".format(tablename))
r = [x for x in data]
dbDisconnect(con)
return r
## 改
def alterData(sensor_id, zigbee_id):
con, c = dbConnect()
c.execute(对指定记录进行更新操作,将 zigbee_id 字段的值修改为所提供的值,同时确保该操作仅针对 sensor_id 字段与所给值相匹配的记录执行。.format(tablename),
(sensor_id, zigbee_id))
con.commit()
print(传感器ID更新为{0},Zigbee ID更新为{1},操作完成。对传感器编号与Zigbee编号进行格式化处理。
dbDisconnect(con)
3.其他概念 3.1 主键&外键
一个表中,主键只能有一个,但是一个表可以有多个外键
3.2 - 对再封装
扫一扫在手机端查看
-
Tags : python3 sqllite3 操作
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。


客服1