pip install pymysql # python 3.x
# 匯入模組
import pymysql
# 連線資料庫
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',passwd='root',db='資料庫名')
# 獲取到資料庫的指標
cursor = conn.cursor()
# 改變返回資料的型別(可以改為字典、列表等)
# 在預設情況下cursor方法返回的是basecursor型別物件,basecursor型別物件在執行查詢後每條記錄的結果以列表(list)表示。
# 如果要返回字典(dict)表示的記錄,就要設定cursorclass引數為pymysql.cursors.dictcursor類。
cursor = conn.cursor(cursor = pymysql.cursors.dictcursor)
sql = '需要執行的 sql 語句'
# 執行sql語句,向資料庫新增資訊 返回對資料庫的影響行數
ret = cursor.execute(sql)
# 字串拼接
ret = cursor.execute('sql%s',(name))
# 獲取資料庫內容(跟指標的位置相關)
content = cursor.fetchone() # 獲取一條內容
content = cursor.fetchall() # 獲取所有的內容
content = cursor.fetchmany(3) # 獲取指定數值的內容
# 改變指標的位置(負數向上,正數向下)
cursor.scroll(-1,mode='relative') # 相對當前的位置移動
cursor.scroll(2,mode='absolute') # 相對絕對的位置移動
# 將要執行的 sql 語句提交到資料庫
conn.commit()
''' 關閉 '''
cursor.close()
conn.close()
import pymysql
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',passwd='root',db='資料庫')
cursor = conn.cursor()
try:
insertsql0 = 'insert into account2 (name,balance) values ("oldboy",4000),("oldboy2",10000)'
insertsql1 = 'update account2 set balance=balance-30 where name="yuan"'
insertsql2 = 'update account2 set balance=balance+30 where name="xiaolv"'
cursor.execute(insertsql0)
conn.commit()
cursor.execute(insertsql1)
# 防止sql注入
'''cursor.execute('select * from 表名 where name=%s',('小明')) 無命名
cursor.execute('select * from 表名 where name=%(us)',) 命名
'''raise exception # 如果sql語句執行失敗,獲取到錯誤
cursor.execute(insertsql2)
cursor.close()
conn.commit()
except exception as e:
conn.rollback() # 出現錯誤回滾到前乙個 commit 處
conn.commit()
python運算元據庫
資料庫的操作在現在的python裡面已經變得十分的好用,有了一套api標準.下面的就是講講如何的去使用這套框架定義.此框架包含以下部分 connect parameters.其中的引數格式如下 dsn 資料來源名稱 user 使用者名稱 可選 password 密碼 可選 host 主機名 可選 d...
python 運算元據庫
目的 通過excel定義檢查指標項,然後通過python讀取指標,通過oracle sqlplus工具去執行獲取具體巡檢結果。unicode utf 8 coding utf 8 import os import sys import xlrd import paramiko reload sys ...
python運算元據庫
python運算元據庫都是通過資料庫驅動取操作的。現在主要有兩張,一種是通過pymysql,還有一種是通過sqlalchemy。在這裡可能還會有人說還有mysqldb模組也可以操作。確實是的,但是mysqldb對python3已經不支援了,所以這裡我就不討論了。第一種pymysql pymysql幫...