python3 sqlite3限制條件查詢的操作
請(qǐng)注意10,11,24行的代碼,是本條博客的精華,邏輯并不難,就是有些小語法問題比較糾結(jié),記錄一下。
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")
補(bǔ)充:python + sqlite3 基本操作
連接數(shù)據(jù)庫
import sqlite3
# 連接數(shù)據(jù)庫(如果不存在則創(chuàng)建)
conn = sqlite3.connect('test.db')
print("Opened database successfully")
# 創(chuàng)建游標(biāo)
cursor = conn.cursor()
...
# 關(guān)閉游標(biāo)
cursor.close()
# 提交事物
conn.commit()
# 關(guān)閉連接
conn.close()
創(chuàng)建表
... # 創(chuàng)建游標(biāo) cursor = conn.cursor() # 創(chuàng)建表 sql = 'CREATE TABLE Student(id integer PRIMARY KEY autoincrement, Name varchar(30), Age integer)' cursor.execute(sql) # 提交事物 conn.commit() ...
插入數(shù)據(jù)
...
# 創(chuàng)建游標(biāo)
cursor = conn.cursor()
# 插入數(shù)據(jù)
sql = "INSERT INTO Student(Name, Age) VALUES(\'love\', 22)"
cursor.execute(sql)
# 插入數(shù)據(jù) 2
data = ('love2', 2221) # or ['love2', 2221]
sql = "INSERT INTO Student(Name, Age) VALUES(?, ?)"
cursor.execute(sql, data)
# 提交事物
conn.commit()
...
查詢數(shù)據(jù)
...
# 創(chuàng)建游標(biāo)
cursor = conn.cursor()
# 查詢數(shù)據(jù)
sql = "select * from Student"
values = cursor.execute(sql)
for i in values:
print(i)
# 查詢數(shù)據(jù) 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()
...
其他操作
自增字段起始位置
# 設(shè)置起始值為1 update sqlite_sequence SET seq = 0 where name = '表名'; # 設(shè)置全部表起始值為默認(rèn)值 delete from sqlite_sequence where name='TableName'; --注意表名區(qū)分大小寫
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
python 獲取list特定元素下標(biāo)的實(shí)例講解
下面小編就為大家分享一篇python 獲取list特定元素下標(biāo)的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-04-04
Python lambda和Python def區(qū)別分析
Python支持一種有趣的語法,它允許你快速定義單行的最小函數(shù)。這些叫做lambda的函數(shù),是從Lisp借用來的,可以用在任何需要函數(shù)的地方2014-11-11
OpenCV+Python--RGB轉(zhuǎn)HSI的實(shí)現(xiàn)
今天小編就為大家分享一篇OpenCV+Python--RGB轉(zhuǎn)HSI的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11
python中kmeans聚類實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了python中kmeans聚類的實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02
python實(shí)現(xiàn)圖片變亮或者變暗的方法
這篇文章主要介紹了python實(shí)現(xiàn)圖片變亮或者變暗的方法,涉及Python中Image模塊操作圖片的相關(guān)技巧,需要的朋友可以參考下2015-06-06
python正則實(shí)現(xiàn)計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了python正則實(shí)現(xiàn)計(jì)算器功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12
python實(shí)現(xiàn)可逆簡(jiǎn)單的加密算法
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)可逆簡(jiǎn)單的加密算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03
Python實(shí)現(xiàn)微信高效自動(dòng)化操作
在如今數(shù)字化時(shí)代,人們對(duì)于效率的追求越來越強(qiáng)烈,而PyAutoGUI和Pyperclip作為Python中的兩個(gè)強(qiáng)大庫,為我們實(shí)現(xiàn)自動(dòng)化操作提供了便利,下面我們就來看看如何利用這兩個(gè)庫實(shí)現(xiàn)微信自動(dòng)化操作吧2023-10-10
使用Python實(shí)現(xiàn)一個(gè)優(yōu)雅的異步定時(shí)器
在 Python 中實(shí)現(xiàn)定時(shí)器功能是一個(gè)常見需求,尤其是在需要周期性執(zhí)行任務(wù)的場(chǎng)景下,本文給大家介紹了基于 asyncio 和 threading 模塊,可擴(kuò)展的異步定時(shí)器實(shí)現(xiàn),需要的朋友可以參考下2025-04-04

