博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python连接SQLite数据库
阅读量:5238 次
发布时间:2019-06-14

本文共 2054 字,大约阅读时间需要 6 分钟。

SQLite作为一款轻型数据库,管理工具有很多,比如SQLite Expert Professional,很适合用来存储Python网站,爬虫的相关数据,下面列出基本的增删查改操作

读取操作:

conn1 = sqlite3.connect(board.DatabasePath)conn1.row_factory = sqlite3.Rowconn1.execute("pragma foreign_key=on")c1 = conn1.cursor()try:#执行查询操作    c1.execute("\select username as username \from \    register \where name=?;", \              (username,))#异常处理except (sqlite3.DatabaseError) as e:    print e    return Noneelse:    user_row = c1.fetchone()    #调用数据finally:    conn1.close()#关闭连接

增加数据:

conn = sqlite3.connect(board.DatabasePath)conn.row_factory = sqlite3.Rowconn.execute("pragma foreign_key=on")c = conn.cursor()md5 = hashlib.md5()md5.update(password)encrypted_passwd = md5.hexdigest()try:#增加数据    c.execute("\              insert into register (name,work,email,username,password) values (?,?,?,?,?);", \              (name, workplace, email, username, encrypted_passwd))    c.execute("select last_insert_rowid() as user_id from register;")except (sqlite3.DatabaseError) as e:    print e    conn.rollback()    return Falseelse:    conn.commit()    return Truefinally:    conn.close()

删除操作:

conn=sqlite3.connect(board.DatabasePath)conn.execute("pragma foreign_key=on")conn.row_factory=sqlite3.Rowc=conn.cursor()try:    c.execute("\delete from setting where key=? and parent_id=?;",\(self.slick.key,self.id))except (sqlite3.DatabaseError) as e:    print e    conn.rollback()    return Falseelse:    conn.commit()    self.slick.items.pop(self.id)    self=None    return Truefinally:    conn.close()

修改操作:

conn=sqlite3.connect(board.DatabasePath)conn.execute("pragma foreign_key=on")conn.row_factory=sqlite3.Rowc=conn.cursor()try:    c.execute("\update setting set value=? where key=? and name=?;",\(self.title,self.key,"jumbotron_title"))    c.execute("\update setting set value=? where key=? and name=?;",\(self.content,self.key,"jumbotron_content"))except (sqlite3.DatabaseError) as e:    print e    conn.rollback()    return Falseelse:    conn.commit()    return Truefinally:    conn.close()

 

转载于:https://www.cnblogs.com/FZfangzheng/p/7588793.html

你可能感兴趣的文章
全连接神经网络(DNN)
查看>>
httpd_Vhosts文件的配置
查看>>
php学习笔记
查看>>
28 hashlib 模块 logging 模块 和 configparser模块 functools模块的偏函数partial
查看>>
普通求素数和线性筛素数
查看>>
React Router 4.0 基本使用
查看>>
作业完成2
查看>>
linux文件系统之ext2
查看>>
HDOJ5726解题报告【ST表】
查看>>
oracle查询所有初始化参数(含隐含参数)
查看>>
关于oracle result_cache
查看>>
c#分页读取GB文本文件
查看>>
「HNOI 2013」数列
查看>>
request库下载
查看>>
php 图片转换二进制数
查看>>
彻底卸载SQL2005记录
查看>>
mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication的解决方法
查看>>
需求那点事
查看>>
Linux ssh exit,启动的后台进程不会停止
查看>>
file 图片预览
查看>>