python3 sqlite3限制条件查询的操作


Posted in Python onApril 07, 2021

请注意10,11,24行的代码,是本条博客的精华,逻辑并不难,就是有些小语法问题比较纠结,记录一下。

import json 
import sqlite3
import re
import argparse
def Get(db_file):
  
    conn = sqlite3.connect(db_file)
    cur = conn.cursor()
    print("5555555")
    value1=(60)# this is must be ()
    cur.execute("select * from exception where AGV_ID=(%s)" %(value1))
    #cursor.execute("insert into exception values('%s', '%s','%s' ) " %(start_time ,ID ,infomation))
 
    result= cur.fetchall()
    print("result:",result)
    for i in result:
       print(i)  
    print("******************************888")
  
def get_agv_id(db_file):
  try:
    conn = sqlite3.connect(db_file)
    cur = conn.cursor()
    cur.execute("select * from exception where AGV_ID=51")
    #print( cur.fetchall())
    result= cur.fetchall()
    for i in result:
       print(i)
  except sqlite3.Error,e:
    print(e)
    
if __name__ == '__main__': 
  parser = argparse.ArgumentParser(description='check the information of db')
  #parser.add_argument('-h', '--help', help='Statistics for abnormal information')
  parser.add_argument('-n', '--name', help=' the db of name ')
  args = vars(parser.parse_args())
  db_name = args['name']
  print("db_name:",db_name)
  conn = sqlite3.connect('db_name')
  cursor = conn.cursor()
  Get('fitkits.db')
  get_agv_id('fitkits.db')  
  
  conn.commit()
  conn.close() 
  print('DONE!')
  print("666")

补充:python + sqlite3 基本操作

连接数据库

import sqlite3 
# 连接数据库(如果不存在则创建)
conn = sqlite3.connect('test.db')
print("Opened database successfully")
 
# 创建游标
cursor = conn.cursor() 
...
 
# 关闭游标
cursor.close()
# 提交事物
conn.commit()
# 关闭连接
conn.close()

创建表

...
# 创建游标
cursor = conn.cursor()
 
# 创建表
sql = 'CREATE TABLE Student(id integer PRIMARY KEY autoincrement, Name varchar(30), Age integer)'
cursor.execute(sql)
 
# 提交事物
conn.commit()
...

插入数据

...
# 创建游标
cursor = conn.cursor()
 
# 插入数据
sql = "INSERT INTO Student(Name, Age) VALUES(\'love\', 22)"
cursor.execute(sql)
 
# 插入数据 2
data = ('love2', 2221) # or ['love2', 2221]
sql = "INSERT INTO Student(Name, Age) VALUES(?, ?)"
cursor.execute(sql, data)
 
# 提交事物
conn.commit()
...

查询数据

...
# 创建游标
cursor = conn.cursor()
 
# 查询数据
sql = "select * from Student"
values = cursor.execute(sql)
for i in values:
 print(i)
 
# 查询数据 2
sql = "select * from Student where id=?"
values = cursor.execute(sql, (1,))
for i in values:
 print('id:', i[0])
 print('name:', i[1])
 print('age:', i[2])
 
# 提交事物
conn.commit()
...

其他操作

自增字段起始位置

# 设置起始值为1
update sqlite_sequence SET seq = 0 where name = '表名';
# 设置全部表起始值为默认值
delete from sqlite_sequence where name='TableName'; --注意表名区分大小写

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
在Python中用get()方法获取字典键值的教程
May 21 Python
Python正则表达式如何进行字符串替换实例
Dec 28 Python
Python3实现的画图及加载图片动画效果示例
Jan 19 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
Apr 02 Python
基于Python列表解析(列表推导式)
Jun 23 Python
python接口自动化测试之接口数据依赖的实现方法
Apr 26 Python
Django中自定义admin Xadmin的实现代码
Aug 09 Python
Python collections模块使用方法详解
Aug 28 Python
在notepad++中实现直接运行python代码
Dec 18 Python
Python输出指定字符串的方法
Feb 06 Python
Visual Studio Code搭建django项目的方法步骤
Sep 17 Python
用 Django 开发一个 Python Web API的方法步骤
Dec 03 Python
python实现高效的遗传算法
解决hive中导入text文件遇到的坑
Apr 07 #Python
python - asyncio异步编程
Apr 06 #Python
python - timeit 时间模块
Apr 06 #Python
python制作图形界面的2048游戏, 基于tkinter
python第三方网页解析器 lxml 扩展库与 xpath 的使用方法
Apr 06 #Python
python删除csv文件的行列
Apr 06 #Python
You might like
php下将XML转换为数组
2010/01/01 PHP
php shell超强免杀、减少体积工具实现代码
2012/10/16 PHP
PHP var关键字相关原理及使用实例解析
2020/07/11 PHP
jQuery中add实现同时选择两个id对象
2010/10/22 Javascript
Jquery为单选框checkbox绑定单击click事件
2012/12/18 Javascript
高效率JavaScript编写技巧整理
2013/08/23 Javascript
jquery实现树形二级菜单实例代码
2013/11/20 Javascript
利用js正则表达式验证手机号,email地址,邮政编码
2014/01/23 Javascript
jquery append()方法与html()方法的区别及使用介绍
2014/08/01 Javascript
javascript框架设计读书笔记之数组的扩展与修复
2014/12/02 Javascript
JS中取二维数组中最大值的方法汇总
2016/04/17 Javascript
vue-router项目实战总结篇
2018/02/11 Javascript
浅析java线程中断的办法
2018/07/29 Javascript
JavaScript实现淘宝京东6位数字支付密码效果
2018/08/18 Javascript
vue仿element实现分页器效果
2018/09/13 Javascript
详解webpack2异步加载套路
2018/09/14 Javascript
基于element-ui封装可搜索的懒加载tree组件的实现
2020/05/22 Javascript
Vue实现穿梭框效果
2020/09/30 Javascript
[16:43]Heroes19_剃刀(完美)
2014/10/31 DOTA
Python使用matplotlib实现绘制自定义图形功能示例
2018/01/18 Python
python实现简单tftp(基于udp协议)
2018/07/30 Python
如何使用Python进行OCR识别图片中的文字
2019/04/01 Python
python机器人运动范围问题的解答
2019/04/29 Python
python itchat实现调用微信接口的第三方模块方法
2019/06/11 Python
Python使用多进程运行含有任意个参数的函数
2020/05/02 Python
.img/.hdr格式转.nii格式的操作
2020/07/01 Python
英国最大的在线时尚眼镜店:Eyewearbrands
2019/03/12 全球购物
什么是Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议
2012/09/06 面试题
护理学毕业生自荐信
2013/10/02 职场文书
外贸主管求职简历的自我评价
2013/10/23 职场文书
初中三年学生的学习自我评价
2013/11/13 职场文书
电子商务专业自我鉴定
2013/12/18 职场文书
《湘夫人》教学反思
2014/02/21 职场文书
节约电力资源的建议书
2014/03/12 职场文书
个人收入证明模板
2014/09/18 职场文书
社区环境卫生倡议书
2015/04/29 职场文书