Python連線MySQL並建立資料表
阿新 • • 發佈:2019-02-10
閒暇之餘學習了下python。並通過python連線資料庫,以及簡單的對資料庫的操作。
先貼一段已經實現的程式碼,我使用的版本為3.6,所以安裝的是pysql來實現連線的。執行pip install pymysql
即可安裝。
# conding=utf-8
import pymysql
# 連線資料庫 並新增cursor遊標
conn = pymysql.connect('localhost','root','0000','myapp')
cursor = conn.cursor()
# 建立資料表的sql 語句 並設定name_id 為主鍵自增長不為空
sql_createTb = """CREATE TABLE MONEY (
name_id INT NOT NULL AUTO_INCREMENT,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
PRIMARY KEY(name_id))
"""
# 插入一條資料到moneytb 裡面。
sql_insert = "insert into money(LAST_NAME,AGE,SEX) values('de2',18,'0')"
# 在 execute裡面執行SQL語句
cursor.execute(sql_createTb)
cursor.execute(sql_insert)
print(cursor.rowcount)
conn.commit()
conn.close()
cursor.close()
再上一段程式碼比較詳細的對資料表增刪改查的操作,以及出現異常回滾事務:
import pymysql
# 連線資料庫
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
passwd='888999',
db='myapp',
charset='utf8'
)
# 獲取遊標
cursor = conn.cursor()
# 使用 execute() 方法執行 SQL 的增刪改查 insert delete update select
sql_select = "select * from user"
sql_insert = "insert into user(id,name,age) values(8,'pythonN8','18')"
sql_update = "update user set name='helloPy' where id=7"
sql_delete = "delete from user where d=7"
# 執行 insert 增加的語句 如果出現異常對異常處理
try:
cursor.execute(sql_insert)
print(cursor .rowcount)
cursor.execute(sql_update)
print(cursor.rowcount)
cursor.execute(sql_delete)
print(cursor.rowcount)
conn.commit()
except Exception as e:
print(e)
conn.rollback()
# res = cursor.fetchmany(2)
# print(res)
# res = cursor.fetchall()
# print(res)
cursor.close()
conn.close()