1. 程式人生 > >python 操作mysql資料庫表以及增刪改查

python 操作mysql資料庫表以及增刪改查

上一篇部落格對mysql資料庫的安裝進行了詳細的介紹,這裡具體介紹一下利用python操作mysql資料庫。以下將從資料庫的連線、表的建立、增刪改查等方面進行介紹。
1)資料庫的連線

def create_db_link():
    #建立資料連線
    try:
        print("建立連線!")
        #連線資料庫,connect的引數分別為IP地址、使用者名稱、密碼、資料庫名(要和自己的資料庫對上)
        db = pymysql.connect("localhost","abc","123456","db_1")
        print("連上了!"
) except Exception as e: print("連線失敗!") print(e) exit() """ 主要程式碼 """ db.close()

資料庫操作完成後,記得要關閉連線:close()方法。

2)資料庫表的建立(建)

def create_tb(db):
    #使用cursor()方法操作遊標
    cursor = db.cursor()

    #如果tb_name存在,則刪除
    cursor.execute("DROP TABLE IF EXISTS tb_1"
) #執行建表操作 create_sql = "CREATE TABLE tb_1 (ID INT NOT NULL, \ Name CHAR(8),\ Grade INT )" #建表sql語句 cursor.execute(create_sql)

3)寫入資料(增)

def write_tb(db):
    #使用cursor()方法獲得遊標
    cursor = db.cursor()
    #插入的sql語句
    insert_sql="INSERT INTO tb_1 \
         VALUES (1, '張三', 70),\
                (2, '李四', 80),\
                (3, '王五', 90),\
                (4, '許六', 80),\
                (5, '何七', 70),\
                (6, '呂八', 66),\
                (7, '龍九', 100)"
try: cursor.execute(insert_sql) db.commit() print("插入成功!") except: print("插入失敗") db.rollback()

4)查詢資料(查)

def query_db(db):
    #使用cursor()方法獲取操作遊標
    cursor = db.cursor()
    query_sql="SELECT * FROM tb_1"
    try:
        cursor.execute(query_sql)
        #獲取所有資料
        results = cursor.fetchall()
        #獲得屬性名稱和長度(list)
        fields = cursor.description
        n = len(fields)#
        print('\t'.join([str(i[0]) for i in fields]))
        for row in results:
            ID = row[0]
            Name = row[1]
            Grade = row[2]
            print(str(ID)+'\t'+str(Name)+'\t'+str(Grade))

    except:
        print("獲取資料失敗")

5)修改資料(改)

def update_tb(db):
    #使用cursor方法獲取操作遊標
    cursor = db.cursor()
    update_sql = "UPDATE tb_1 SET Grade=Grade+5 WHERE Grade=80"
    try:
        #執行SQL語句
        cursor.execute(update_sql)
        #提交到資料庫執行
        db.commit()#資料的改變需要執行這個命令
    except:
        print("更新失敗!")
        #發生錯誤時回滾
        db.rollback()

6)刪除資料(刪)

def delete_db(db):
    #刪除資料
    cursor = db.cursor()
    delete_sql = "DELETE FROM tb_1 WHERE Grade=66"
    #SQL刪除語句
    try:
        cursor.execute(delete_sql)
        db.commit()#提交資料庫執行刪除
    except:
        print("刪除資料失敗!")
        db.rollback()#有錯誤時進行回滾

以上程式碼為資料庫表的建立、增刪改查操作,後續將在資源連結裡分享python操作資料庫的完整程式碼。