久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

        手機站
        千鋒教育

        千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

        千鋒教育

        掃一掃進(jìn)入千鋒手機站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學(xué)習(xí)站小程序
        隨時隨地免費學(xué)習(xí)課程

        當(dāng)前位置:首頁  >  技術(shù)干貨  > python操作mysql數(shù)據(jù)庫,為什么要在執(zhí)行后加commit()?

        python操作mysql數(shù)據(jù)庫,為什么要在執(zhí)行后加commit()?

        來源:千鋒教育
        發(fā)布人:xqq
        時間: 2023-10-13 07:53:46 1697154826

        一、python操作mysql數(shù)據(jù)庫,為什么要在執(zhí)行后加commit()

        因為在操作數(shù)據(jù)庫的時候是先在程序中執(zhí)行sql語句,這種操作并沒有在本地數(shù)據(jù)庫中更新,當(dāng)我們只想commit時才會真正更新。這樣就可以避免我們操作途中遇到問題,導(dǎo)致數(shù)據(jù)只操作一般的問題。像銀行轉(zhuǎn)賬就是個很好的例子,我的錢轉(zhuǎn)出去了,但是這個時候出現(xiàn)問題,程序結(jié)束了。這個時候我的錢少了,但是收款方卻沒收到錢。

        通用步驟

        其實,這里有一個通用步驟,都是寫死了的,大家照做就行。

        # 1. 導(dǎo)入相關(guān)庫

        import pymysql

        # 2. 鏈接MySQL服務(wù)器

        db = pymysql.connect(host=’localhost’ , user=’root’ , password=’******’ , port=3306 ,db=’spiders’ , charset=’utf8′)

        # 3. 創(chuàng)建一個cursor游標(biāo)對象

        cursor = db.cursor()

        # 4. 在這一步寫你的sql語句

        sql = ‘select version()’

        # 5. 執(zhí)行sql語句

        cursor.execute(sql)

        # 6. 斷開連接

        db.close()

        可以看出,整個過程就是第四步那里不同。歸根到底,其實就是寫sql。

        延伸閱讀:


        二、數(shù)據(jù)庫中的概念

        Table:數(shù)據(jù)庫中的表,下文稱“table”或者“表”。

        Column:表中的各個字段,下文稱“column”或者“列”或者“字段”。

        Row:表中的各條記錄,下文稱“row”或者“行”

        Index:表中的索引,用戶可以建立索引以便加速搜索,但是用戶無法直接使用索引,下文稱“index”或者“索引”。

        View:數(shù)據(jù)庫中的視圖,一種由實際的表導(dǎo)出的可視化的表,并不實際存儲。

        Virtual table:虛擬表是一種表現(xiàn)得像表的對象,從SQL語句的角度看,虛表可以和表或者view一樣操作,但是對虛擬表的查詢或者修改操作會調(diào)用注冊在虛擬表上的回調(diào)函數(shù),虛擬表機制使程序可以提供類似于SQL的表的接口供SQL語句操作。隱藏在虛擬表下的數(shù)據(jù)結(jié)構(gòu)可能是內(nèi)存中的數(shù)據(jù),或者通過即時運算得出的結(jié)果,或者是磁盤上的文件(比如CSV)。下文稱“virtual table”或者“虛擬表”。

        Shadow table:FTS(全文搜索)中所使用的每個virtual table,都有3-5個真實的數(shù)據(jù)庫的table(分別名為%_content、%_segdir、%_segment、 %_stat、%_docsize,%是FTS virtual table的名字)來在實現(xiàn),這些table被稱為shadow table。

        Trigger:數(shù)據(jù)庫中的觸發(fā)器,由修改數(shù)據(jù)庫的事件觸發(fā)的存儲過程,下文稱“觸發(fā)器”或者“trigger”。

        Schema:SQLite數(shù)據(jù)庫的結(jié)構(gòu)(有哪些table/index/view/trigger,分別有哪些字段),下文稱“schema”。

        Rowid:rowid是SQLite中的表隱含的一個column,是其內(nèi)部id,在該表中少數(shù),是SQLite中的元數(shù)據(jù)。

        Statement:SQL語句。

        Prepared statement:經(jīng)過“預(yù)備”的SQL語句,所謂“預(yù)備”類似編譯,可以再多次執(zhí)行同一語句的時候加速(跳過“預(yù)備”過程)。

        sqlite_master:sqlite數(shù)據(jù)庫中維護(hù)的系統(tǒng)表,該表的b-tree的根頁號永遠(yuǎn)為1,有5個列,分別是類型(table, view, index,trigger,四者之一)、名稱、所在表名、根頁號、SQL語句。

        Journal:日志

        Transaction:事務(wù)是用戶定義的一系列數(shù)據(jù)庫操作,要么全部執(zhí)行,要么全部不執(zhí)行。

        Magic?string:類似“魔數(shù)/幻數(shù)”,SQLite數(shù)據(jù)庫文件特征頭。

        Fraction

        Auto-vacuum:自動清空

        Incremental-vacuum

        BLOB:Binary Large OBject

        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
        請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
        免費領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學(xué) 138****2860 剛剛成功領(lǐng)取
        王同學(xué) 131****2015 剛剛成功領(lǐng)取
        張同學(xué) 133****4652 剛剛成功領(lǐng)取
        李同學(xué) 135****8607 剛剛成功領(lǐng)取
        楊同學(xué) 132****5667 剛剛成功領(lǐng)取
        岳同學(xué) 134****6652 剛剛成功領(lǐng)取
        梁同學(xué) 157****2950 剛剛成功領(lǐng)取
        劉同學(xué) 189****1015 剛剛成功領(lǐng)取
        張同學(xué) 155****4678 剛剛成功領(lǐng)取
        鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
        董同學(xué) 138****2867 剛剛成功領(lǐng)取
        周同學(xué) 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        DBeaver怎么保持?jǐn)?shù)據(jù)庫連接?

        一、DBeaver保持?jǐn)?shù)據(jù)庫連接的方法1、連接到數(shù)據(jù)庫打開DBeaver并選擇連接到您的目標(biāo)數(shù)據(jù)庫。選擇適當(dāng)?shù)臄?shù)據(jù)庫類型,輸入必要的連接信息,如主機...詳情>>

        2023-10-13 09:05:04
        Kettle連接MySQL為什么會報錯?

        一、Kettle連接MySQL會報錯的原因1、驅(qū)動程序缺失Kettle需要使用MySQL的JDBC驅(qū)動程序來連接MySQL數(shù)據(jù)庫。如果沒有正確配置或提供JDBC驅(qū)動程序,...詳情>>

        2023-10-13 08:53:41
        wait()、sleep()、join()和yield()區(qū)別是什么?

        一、wait()wait()方法是Object類中的方法,主要用于線程間的同步和協(xié)作。當(dāng)一個線程調(diào)用某個對象的wait()方法時,它會釋放該對象的鎖,并進(jìn)入等...詳情>>

        2023-10-13 08:45:29
        什么是Caché數(shù)據(jù)庫?

        一、對象訪問通過對象訪問,開發(fā)人員可以使用面向?qū)ο蟮木幊陶Z言(如Java、C#等)直接操作數(shù)據(jù)庫中的對象。這種方式提供了更加直觀和便捷的數(shù)據(jù)...詳情>>

        2023-10-13 08:42:01
        mysql group commit為什么要保證binlog和redo log提交的順序一致?

        一、為什么要保證binlog和redo log提交的順序一致MySQL為了保證master和slave的數(shù)據(jù)一致性,就必須保證binlog和InnoDB redo日志的一致性(因為...詳情>>

        2023-10-13 08:25:24
        快速通道
        汉源县| 修水县| 如皋市| 淅川县| 保靖县| 巧家县| 申扎县| 义马市| 余姚市| 阳曲县| 西丰县| 乌拉特后旗| 正镶白旗| 兴义市| 黄浦区| 永平县| 印江| 晋宁县| 广德县| 织金县| 阿鲁科尔沁旗| 阳江市| 墨江| 迭部县| 金寨县| 兴文县| 长宁区| 专栏| 视频| 绥阳县| 西青区| 黔西县| 苏州市| 内江市| 通化县| 怀宁县| 安阳县| 建水县| 元氏县| 阳春市| 通江县|