日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

使用python简单连接并操作数据库

發(fā)布時間:2023/12/20 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用python简单连接并操作数据库 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

python中連接并操作數(shù)據(jù)庫

  • 圖示操作流程

一、使用的完整流程

# 1. 導入模塊 from pymysql import connect# 2. 創(chuàng)建和數(shù)據(jù)庫服務器的連接,自行設置 服務器地址,端口,用戶名,密碼,數(shù)據(jù)庫名, 通信使用字符和數(shù)據(jù)庫字符集一致 conn = connect(host='', port=, user='', password='',database='', charset='')# 3. 獲取游標 cursor = conn.cursor()# 4. 執(zhí)行SQL語句 sql = "sql語句的內容,按照標準sql語句格式"# 5. execute執(zhí)行后返回值就是SQL語句在執(zhí)行過程中影響的行數(shù),可以打印出來顯示語句是否執(zhí)行成功 row_count = cursor.execute(sql) print("SQL語句執(zhí)行影響的行數(shù)%d" % row_count)# 6. 提交數(shù)據(jù),在pymysql中時默認不提交的,必須手動提交,否則無法寫入數(shù)據(jù)庫 conn.commit() # # 回滾數(shù)據(jù)到什么都不做的狀態(tài) 即撤銷剛剛的修改 conn.rollback()# 7. 關閉游標 cursor.close()# 8. 關閉連接 conn.close()

二、關于SQL注入的問題

  • 什么是SQL注入 產生原因
    • 后臺將用戶提交的帶有惡意的數(shù)據(jù)和SQL進行字符串方式的拼接,從而影響了SQL語句的語義,最終產生數(shù)據(jù)泄露的現(xiàn)象。
  • 防止: sql語句的參數(shù)化
    • 將SQL語句的所有數(shù)據(jù)參數(shù)存在一個列表中傳遞給execute函數(shù)的第二個參數(shù)

      row_count = cursor(游標對象).execute(sql語句, params)# sql語句中所有參數(shù),都通過儲存在params內,然后向sql語句傳參 # 那么params=[數(shù)值1,數(shù)值2....],此時sql語句中有多個%s即可

    轉載于:https://www.cnblogs.com/yanguhung/p/10145770.html

    總結

    以上是生活随笔為你收集整理的使用python简单连接并操作数据库的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。