Python連接MYSQL
本着如果使用博客記錄自己的學習路徑,這個是自己的第一個博客,正好自己正在利用Python去連接MYSQL,所以記錄下來以防將來學習使用。
利用PIP裝pymysql
首先需要有對應的Python環境,可以使用anaconda裝載集成開發環境,也可以單獨裝python,再裝pip。
重開一個terminal,如果已經裝過Pip, 則直接輸入pip install pymysql
就ok.
裝MYSQL
如果是windows則直接下載MYSQL不同版本的MYSQL,推薦使用64位版本,之后可以配置相應的db,然后我們就可以進行連接。
連接MYSQL
首先需要使用pymysql
與我們本地的mysql建立連接,如果是遠程server,只需要更改對應的host,user和password即可。
import pymysql
host = 'localhost'
user = 'root'
password = 'password'
# which database to use.
db = 'person'
conn = pymysql.connect(host=host, user=user, password=password, database=db)
應用Connection進行建表及查詢
創建表
我們需要做的就是根據MYSQL基本建表語法進行SQL的編寫即可。
new_table_create_sql = "create table if not exists `new_purchase` (`name` varchar(255), `item` varchar(255))"
# with condiction so we don't need to care about close connection.
with conn:
with conn.cursor() as cursor:
cursor.execute(new_table_create_sql)
插入數據
插入數據則可以開一個connection,遍歷我們需要插入的數據,如果我們插入成功則進行提交。
new_data = [("a", "1"), ("b", "2")]
with conn:
with conn.cursor() as cursor:
cursor.execute(new_table_create_sql)
insert_sql = "insert into new_purchase values (%s, %s)"
for d in new_data:
cursor.execute(insert_sql, (d[0], d[1]))
conn.commit()
查詢數據
查詢數據則只需要利用connection進行需要查詢的SQL,我們可以將全部的數據集都查詢出來,返回的結果為一個tuple,不可變;或者我們可以只查詢一條數據以判定我們確實可以得到結果。
with conn:
with conn.cursor() as cursor:
cursor.execute("select * from new_purchase")
# get full data
out_res = cursor.fetchall()
# if just need one record
# out_res = cursor.fetchone()
最后一句
其實我們使用pymysql
進行MYSQL的查詢,最核心的就是連接MYSQL,之后我們可以的和我們直接寫SQL是一樣的。