python利用MySQL操作數據庫

from pymysql import *
import matplotlib.pyplot as plt

def main():
    name = []
    salary = []

    #建立數據庫連接
    #host:主機  port:端口  user:數據庫用戶  password:密碼
    #database:數據庫名  charset:編碼集
    cnn = connect(host="localhost", port=3306, \
                  user="root", password="frank_123", \
                  database="test", charset="utf8")

    #創建遊標
    cur = cnn.cursor()
    tables = cur.execute("SHOW TABLES")
    for i in range(tables):
        print(cur.fetchone())


    #執行MySQL語句,返回的record爲查詢到表中的記錄的個數,即行數
    record = cur.execute("SELECT * FROM employee")

    #遊標相當於鼠標的光標,通過遊標獲取查詢到的相關記錄
    #返回的查詢記錄是元組類型
    #fetchmany一次獲取所有查詢記錄
    #fetchone一次只獲取一條查詢記錄
    result = cur.fetchmany(record)
    print(result)
    for line in result:
        name.append(line[2])
        salary.append(line[4])
	
	#先關閉遊標,再關閉與數據庫的連接
    cur.close()
    cnn.close()

    return name, salary

if __name__=="__main__":
    name, salary = main()
    plt.bar(range(len(name)), salary, width=0.1, tick_label=name, color="orange")
    plt.xlabel("names")
    plt.ylabel("salary")
    plt.show()
('employee',)
((1001, 26, 'Tom', '北京', Decimal('8000.00'), 'R&D', Decimal('0.25'), datetime.date(1993, 10, 2)), 
 (1002, 25, 'Charles', '北京', Decimal('4000.00'), 'Personnel', None, datetime.date(1996, 3, 10)),
 (1003, 30, 'Douglas', '上海', Decimal('4000.00'), 'Personnel', Decimal('0.20'), datetime.date(1995, 8, 20)),
 (1004, 28, 'Justin', '北京', Decimal('10000.00'), 'R&D', Decimal('0.36'), datetime.date(1990, 7, 26)), 
 (1005, 32, 'Marshal', '深圳', Decimal('4000.00'), 'Logistics', None, datetime.date(1985, 5, 11)))

在這裏插入圖片描述
以上代碼實際並沒有多大意義,只是爲了做從數據庫導入數據便於做數據分析的樣例。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章