亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python sqlite3 判斷cursor的結果是否為空的案例

 更新時間:2021年03月15日 15:05:13   作者:RikkaTakanashi  
這篇文章主要介紹了python sqlite3 判斷cursor的結果是否為空的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

len(list(cursor))若是0則為空

舉例:

import sqlite3
 
# CREATE
 db = sqlite3.connect("E:/Pycharm/workspace/django_test/user.db")
 db.execute("create table user(info primary key,flag,result )")
 db.execute("insert into user(info,flag,result) values('RikkaTakanashi','0','DarkFlameMaster')")
 db.commit()
 db.close()
db = sqlite3.connect("E:/Pycharm/workspace/django_test/user.db")
c=db.cursor()
cursor=c.execute("select info,flag,result from user where info='123'")
print(len(list(cursor)))

結果為0

db = sqlite3.connect("E:/Pycharm/workspace/django_test/user.db")
c=db.cursor()
cursor=c.execute("select info,flag,result from user where info='RikkaTakanashi'")
print(len(list(cursor)))

結果為1

補充:python中的SQLite游標(cursor)

我們知道關系數(shù)據庫管理系統(tǒng)實質是面向集合的,在Sqlite中并沒有一種描述表中單一記錄的表達形式,除非使用where 子句來限制只有一條記錄被選中。因此我們必須借助于游標來進行面向單條記錄的數(shù)據處理。由此可見,游標允許應用程序對查詢語句select 返回的行結果集中每一行進行相同或不同的操作,而不是一次對整個結果集進行同一種操作;它還提供對基于游標位置而對表中數(shù)據進行刪除或更新的能力;正是游標把作為面向集合的數(shù)據庫管理系統(tǒng)和面向行的程序設計兩者聯(lián)系起來,使兩個數(shù)據處理方式能夠進行溝通。

游標提供了一種對從表中檢索出的數(shù)據進行操作的靈活手段,就本質而言,游標實際上是一種能從包括多條數(shù)據記錄的結果集中每次提取一條記錄的機制。游標總是與一條SQL 選擇語句相關聯(lián)。因為游標由結果集(可以是零條、一條或由相關的選擇語句檢索出的多條記錄)和結果集中指向特定記錄的游標位置組成。當決定對結果集進行處理時,必須聲明一個指向該結果集的游標。如果曾經用 C 語言寫過對文件進行處理的程序,那么游標就像您打開文件所得到的文件句柄一樣,只要文件打開成功, 該文件句柄就可代表該文件。對于游標而言,其道理是相同的??梢娪螛四軌驅崿F(xiàn)按與傳統(tǒng)程序讀取平面文件類似的方式處理來自基礎表的結果集,從而把表中數(shù)據以平面文件的形式呈現(xiàn)給程序。

使用Python的SQLite時,只要搞清楚Connection和Cursor對象,打開后一定記得關閉,就可以放心地使用。

使用Cursor對象執(zhí)行insert,update,delete語句時,執(zhí)行結果由rowcount返回影響的行數(shù),就可以拿到執(zhí)行結果。

使用Cursor對象執(zhí)行select語句時,通過featchall()返回select的全部數(shù)據結果集。結果集是一個list,每個元素都是一個tuple,對應一行記錄,按建表的字段順序排列。fetchone()返回一條結果,是一個tuple,每個元素是一個字段值。

需要注意的是,SQLite游標是有狀態(tài)的,只能遍歷結果集一次,不能在結果集中返回移動,遍歷結束返回空值。featchall()一次性返回全部結果,fetchone()依順序每次返回一條結果,而且對fetchone()執(zhí)行l(wèi)en()操作以獲得所取得記錄的條數(shù)后,相當于完成對結果集的一次遍歷,結果集將被清空。因此,取得結果集后,如需對結果集進行進一步操作,可將結果集保存到變量中。

while cn.fetchone():
 print(cn.fetchone())
for line in cn.featchall():
 print(line)

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關文章

  • 淺談Django的緩存機制

    淺談Django的緩存機制

    這篇文章主要介紹了淺談Django的緩存機制,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • 基于python3實現(xiàn)倒敘字符串

    基于python3實現(xiàn)倒敘字符串

    這篇文章主要介紹了基于python3實現(xiàn)倒敘字符串,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 解決pytorch報錯:AssertionError: Invalid device id的問題

    解決pytorch報錯:AssertionError: Invalid device id的問題

    今天小編就為大家分享一篇解決pytorch報錯:AssertionError: Invalid device id的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • Python中魔術方法的定義及一些常用方法

    Python中魔術方法的定義及一些常用方法

    所有以雙下劃線__包起來的方法,統(tǒng)稱為Magic Method(魔術方法),它是一種的特殊方法,這篇文章主要給大家介紹了關于Python中魔術方法的定義及一些常用方法,需要的朋友可以參考下
    2024-02-02
  • win10系統(tǒng)下如何徹底卸載anaconda3

    win10系統(tǒng)下如何徹底卸載anaconda3

    最近跑代碼的時候老出現(xiàn)各種錯誤,因為之前卸載過一次anaconda,所以猜測可能是沒有卸載干凈,所以又重新卸載了一遍,下面這篇文章主要給大家介紹了關于win10系統(tǒng)下如何徹底卸載anaconda3的相關資料,需要的朋友可以參考下
    2023-04-04
  • 通過cmd進入python的實例操作

    通過cmd進入python的實例操作

    在本篇內容中小編給大家分享了關于通過cmd怎么進入python的實例操作方法和步驟,有需要的朋友們可以參考下。
    2019-06-06
  • python繪制詞云圖最全教程(自定義png形狀、指定字體、顏色)

    python繪制詞云圖最全教程(自定義png形狀、指定字體、顏色)

    詞云圖是一種直觀的方式來展示文本數(shù)據,它易于理解,能展示出詞語的頻率使用情況,對于文本分析非常有用,這篇文章主要給大家介紹了python繪制詞云圖(自定義png形狀、指定字體、顏色)的相關資料,需要的朋友可以參考下
    2024-05-05
  • 詳盡講述用Python的Django框架測試驅動開發(fā)的教程

    詳盡講述用Python的Django框架測試驅動開發(fā)的教程

    這篇文章主要介紹了詳盡講述用Python的Django框架測試驅動開發(fā)的教程,主要使用TDD工具,全文介紹非常詳細,需要的朋友可以參考下
    2015-04-04
  • python環(huán)境路徑配置以及命令行運行腳本

    python環(huán)境路徑配置以及命令行運行腳本

    這篇文章主要為大家詳細介紹了python環(huán)境路徑配置以及命令行運行腳本,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • python神經網絡Pytorch中Tensorboard函數(shù)使用

    python神經網絡Pytorch中Tensorboard函數(shù)使用

    這篇文章主要為大家介紹了python神經網絡Pytorch中Tensorboard常用函數(shù)的使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05

最新評論