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 相关文章推荐
java直接调用python脚本的例子
Feb 16 Python
Python实现的数据结构与算法之队列详解
Apr 22 Python
Python利用matplotlib生成图片背景及图例透明的效果
Apr 27 Python
Python绘制七段数码管实例代码
Dec 20 Python
使用 Python 实现微信公众号粉丝迁移流程
Jan 03 Python
python定向爬取淘宝商品价格
Feb 27 Python
python 图像的离散傅立叶变换实例
Jan 02 Python
Python 中的pygame安装与配置教程详解
Feb 10 Python
Python matplotlib绘制图形实例(包括点,曲线,注释和箭头)
Apr 17 Python
python动态规划算法实例详解
Nov 22 Python
python爬虫scrapy框架的梨视频案例解析
Feb 20 Python
python3美化表格数据输出结果的实现代码
Apr 14 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
二十行语句实现从Excel到mysql的转化
2006/10/09 PHP
php强制文件下载而非在浏览器打开的自定义函数分享
2014/05/08 PHP
Linux下手动编译安装PHP扩展的例子分享
2014/07/15 PHP
PHP模拟asp.net的StringBuilder类实现方法
2015/08/08 PHP
Zend Framework教程之Zend_Controller_Plugin插件用法详解
2016/03/07 PHP
laravel 中如何使用ajax和vue总结
2017/08/16 PHP
Laravel程序架构设计思路之使用动作类
2018/06/07 PHP
解决laravel 表单提交-POST 异常的问题
2019/10/15 PHP
xss文件页面内容读取(解决)
2010/11/28 Javascript
eval与window.eval的差别分析
2011/03/17 Javascript
js 时间函数应用加、减、比较、格式转换的示例代码
2013/08/23 Javascript
jQuery功能函数详解
2015/02/01 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
实现JavaScript的组成----BOM和DOM详解
2016/05/18 Javascript
基于angular中的重要指令详解($eval,$parse和$compile)
2016/10/21 Javascript
nodejs+express实现文件上传下载管理网站
2017/03/15 NodeJs
了解ESlint和其相关操作小结
2018/05/21 Javascript
详解Angular如何正确的操作DOM
2018/07/06 Javascript
了解JavaScript中let语句
2019/05/30 Javascript
countUp.js实现数字动态变化效果
2019/10/17 Javascript
关于AngularJS中几种Providers的区别总结
2020/05/17 Javascript
原生JS实现京东查看商品点击放大
2020/12/21 Javascript
[03:02]生活中的Dendi之野外度假篇
2016/08/09 DOTA
[58:21]DOTA2亚洲邀请赛 4.3 突围赛 Liquid vs VGJ.T 第二场
2018/04/04 DOTA
Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例
2018/03/22 Python
DataFrame中去除指定列为空的行方法
2018/04/08 Python
python获取时间及时间格式转换问题实例代码详解
2018/12/06 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
2020/02/12 Python
django 装饰器 检测登录状态操作
2020/07/02 Python
HTML5注册页面示例代码
2014/03/27 HTML / CSS
Falconeri美国官网:由羊绒和羊毛制成的针织服装
2018/04/08 全球购物
东方红海科技面试题软件测试方面
2012/02/08 面试题
总经理任命书范本
2014/06/05 职场文书
质量保证书格式
2015/02/27 职场文书
高中语文教学反思范文
2016/02/16 职场文书
Javascript的promise,async和await的区别详解
2022/03/24 Javascript