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 相关文章推荐
解决python2.7用pip安装包时出现错误的问题
Jan 23 Python
Windows下安装python MySQLdb遇到的问题及解决方法
Mar 16 Python
python字符串过滤性能比较5种方法
Jun 22 Python
使用python为mysql实现restful接口
Jan 05 Python
Ubuntu下使用python读取doc和docx文档的内容方法
May 08 Python
pandas 对每一列数据进行标准化的方法
Jun 09 Python
python生成密码字典的方法
Jul 06 Python
elasticsearch python 查询的两种方法
Aug 04 Python
python 中值滤波,椒盐去噪,图片增强实例
Dec 18 Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
Nov 25 Python
python中二分查找法的实现方法
Dec 06 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
Mar 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
PHP5 面向对象(学习记录)
2009/12/02 PHP
PHP is_subclass_of函数的一个BUG和解决方法
2014/06/01 PHP
YII动态模型(动态表名)支持分析
2016/03/29 PHP
基于Laravel 多个中间件的执行顺序详解
2019/10/21 PHP
用jQuery实现检测浏览器及版本的脚本代码
2008/01/22 Javascript
location对象的属性和方法应用(解析URL)
2013/04/12 Javascript
放弃用你的InnerHTML来输出HTML吧 jQuery Tmpl不详细讲解
2013/04/20 Javascript
Nodejs学习笔记之Stream模块
2015/01/13 NodeJs
js实现图片轮播效果
2015/12/19 Javascript
jQuery基于muipicker实现仿ios时间选择
2016/02/22 Javascript
JS中append字符串包含onclick无效传递参数失败的解决方案
2016/12/26 Javascript
浅析Angular2子模块以及异步加载
2017/04/24 Javascript
VUE元素的隐藏和显示(v-show指令)
2017/06/23 Javascript
Vue项目中quill-editor带样式编辑器的使用方法
2017/08/08 Javascript
angular.extend方法的具体使用
2017/09/14 Javascript
Django查询数据库的性能优化示例代码
2017/09/24 Python
PyQt5 QSerialPort子线程操作的实现
2018/04/21 Python
Python打包方法Pyinstaller的使用
2018/10/09 Python
Python 批量刷博客园访问量脚本过程解析
2019/08/30 Python
解决django model修改添加字段报错的问题
2019/11/18 Python
python 输出列表元素实例(以空格/逗号为分隔符)
2019/12/25 Python
pandas 数据类型转换的实现
2020/12/29 Python
canvas实现飞机打怪兽射击小游戏的示例代码
2018/07/09 HTML / CSS
HTML5中meta属性的使用方法
2016/02/29 HTML / CSS
法国时尚童装网站:Melijoe
2016/08/10 全球购物
优秀体育委员自荐书
2014/01/31 职场文书
2014年国培研修感言
2014/03/09 职场文书
爱心助学感谢信
2015/01/21 职场文书
搞笑婚礼主持词开场白
2015/11/24 职场文书
百年校庆宣传标语口号
2015/12/26 职场文书
银行岗位培训心得体会
2016/01/09 职场文书
优秀家长事迹材料(2016推荐版)
2016/02/29 职场文书
2016年教师党员创先争优承诺书
2016/03/24 职场文书
SQL Server数据定义——模式与基本表操作
2021/04/05 SQL Server
Redis高级数据类型Hyperloglog、Bitmap的使用
2021/05/24 Redis
Python实现智慧校园自动评教全新版
2021/06/18 Python