Day2--Mysql基礎

Sakauz發表於2019-03-22

一、 連線資料庫

  1. 下載安裝pymyql庫

pip3 install pymysql

  1. 匯入庫

import pymysql

  1. 連線資料庫,最好用try except捕獲異常
DBHOST = 'localhost'
DBUSER = 'root'
DBPASS = 'root'
DBNAME = 'dbtest'
try:
    db = pymysql.connect(DBHOST, DBUSER, DBPASS, DBNAME)
    print('資料庫連線成功!')
except pymysql.Error as e:
    print('資料庫連線失敗'+str(e))
複製程式碼

二、建立一張新表

  1. 宣告一個遊標

cur = db.cursor()

  1. 建立表之前先檢查是否存在,如果存在則刪除

cur.execute('DROP TABLE IF EXISTS Student')

3、編輯sql語句

sqlQuery = "CREATE TABLE Student(Name CHAR(20) NOT NULL ,Email CHAR(20),Age int )"
cur.execute(sqlQuery)
複製程式碼

三、向表中插入一條資料

  1. 編輯sql語句

sqlQuery=" INSERT INTO Student (Name, Email, Age) VALUE (%s,%s,%s) "

  1. 編輯準備插入的值

value=('Mike','123456@163.com',20)

  1. 執行sql語句
try:
    cur.execute(sqlQuery,value)
    db.commit()
    print('資料插入成功!')
except pymysql.Error as e:
    print("資料插入失敗:"+e )
    db.rollback()
複製程式碼

四、查詢表中的資料

  1. 編輯sql語句

sqlQuery = "SELECT * FROM Student"

2、使用fetchall()方法接收全部的返回結果行

try:
    cur.execute(sqlQuery)
    results=cur.fetchall()
    for row in results:
        name=row[0]
        email=row[1]
        age=row[2]
        print('Name:%s,Email:%s,Age:%s'%(name,email,age))
except pymysql.Error as e:
    print("資料查詢失敗:"+str(e))
複製程式碼

五、更新表中的資料

  1. 編輯sql語句

sqlQuery = "UPDATE Student SET Name= %s WHERE Name=%s"

  1. 編輯更新的資訊

value = ('John', 'updated name')

  1. 提交修改
try:
    cur.execute(sqlQuery, value)
    db.commit()
    print('資料更新成功!')
except pymysql.Error as e:
    print("資料更新失敗:"+str(e))
    # 發生錯誤時回滾
    db.rollback()
複製程式碼

六、刪除表中的資料

  1. 編輯sql語句

sqlQuery = "DELETE FROM Student where Name=%s"

  1. 編輯更新的資訊

value = ('John')

  1. 提交修改
try:
    cur.execute(sqlQuery, value)
    db.commit()
    print('Date Deleted Successfully')
except pymysql.Error as e:
    print("資料刪除失敗:"+str(e))
    # 發生錯誤時回滾
    db.rollback()
複製程式碼

七、刪除一張表

  1. 編輯sql語句

sqlQuery='DROP TABLE IF EXISTS Student'

  1. 提交修改
cur.execute(sqlQuery)
print('表刪除成功!')
複製程式碼

相關文章