mysql相關(guān)
最近幾天在做機(jī)器學(xué)習(xí)相關(guān),一個(gè)小項(xiàng)目點(diǎn)是:打開xlsx,取出單元格中的數(shù)據(jù)請(qǐng)求昔脯,在返回中取出部分值存入數(shù)據(jù)庫(kù)。在Python連接數(shù)據(jù)庫(kù)的過(guò)程中笛臣,遇到了一些小坑云稚,現(xiàn)在記錄下來(lái)。
mysql安裝
由于坑爹的墻太慢沈堡,找了鏡像才安裝好静陈。
再一個(gè),mac上通過(guò)vim ~/.bash_profile修改絕對(duì)路徑:先cd mysql诞丽,再執(zhí)行vim ~/.bash_profile
i 進(jìn)入編輯模式 (insert)
esc退出編輯模式
:(冒號(hào))進(jìn)入最后行模式
wq保存并退出vi
ps: 這個(gè)坑了很久窿给,一直沒(méi)明白最后行是啥意思.....
設(shè)置完之后就可以使用mysql命令了贵白,這里遇到了第二個(gè)坑,因?yàn)閙ysql的默認(rèn)用戶是root崩泡,而在mac下我不是root用戶禁荒,一直無(wú)法啟動(dòng)。最終使用sudo命令:
sudo mysql -uroot -p
設(shè)置重新完密碼后可以正常登陸
Python連接mysql
這里用了pymysql
import pymysql.cursors
首先連接數(shù)據(jù)庫(kù)角撞,創(chuàng)建connection:
connection = pymysql.connect(host='127.0.0.1',
port=3306,
user='root',
password='password',
db='xu',
charset='utf8',
cursorclass=pymysql.cursors.DictCursor)
cur = connection.cursor()
建表hotel:
cur.execute("""
create table if not EXISTS hotel
(
HotelID int(11) PRIMARY KEY ,
HotelName VARCHAR(50) ,
HotelScore int(11)
)
""")
這里有個(gè)問(wèn)題呛伴,就必須先在mysql中手動(dòng)建立需要連接的數(shù)據(jù)庫(kù)。