安裝pymysql
pymysql是python3+的乙個包(python2使用的是mysqldb),安裝起來比較簡單。
pip install pymysql
建立連線
import pymysql
conn = pymysql.connect(
host='xx.xx.xx.xx',
user='user_name',
password='passwd',
database='db_name',
charset='utf8')
測試連線
with conn.cursor() as cursor:
sql = "select version()"
cursor.execute(sql)
res = cursor.fetchone()
print("mysql version: %s" % res)
新建table(表名mytable2)
with conn.cursor() as cursor:
cursor.execute("drop table if exists mytable2") # 如果存在,刪除同名table
sql = '''
create table mytable2 (
id int not null auto_increment primary key,
symbol char(6) not null,
name varchar(255) not null,
area varchar(255),
industry varchar(255),
listed_date varchar(255)
) engine=innodb default charset=utf8
cursor.execute(sql)
print('create table ok!')
新增一條新記錄
# 建立一條新的記錄
with conn.cursor() as cursor:
sql = "insert into mytable2 (symbol,name,area,industry,listed_date) values ('210099','test','浙江','電器儀表','20120127')"
cursor.execute(sql)
# 或者
# sql = "insert into mytable2 (symbol,name,area,industry,listed_date) values (%s,%s,%s,%s,%s)"
# values = ('220012','test2','江蘇','太陽能','20150206') # 元祖或列表
# cursor.execute(sql, values)
# 連線完資料庫並不會自動提交,所以需要手動 commit 你的改動
conn.commit()
print("insert done")
新增多條新記錄
# 建立多條新的記錄
with conn.cursor() as cursor:
sql = "insert into mytable2 (symbol,name,area,industry,listed_date) values (%s,%s,%s,%s,%s)"
values = [('220016','test6','江蘇','太陽能','20150206'),
('220017','test7','江蘇','太陽能','20150206'),
('220018','test8','江蘇','太陽能','20150206')]
cursor.executemany(sql, values)
# 連線完資料庫並不會自動提交,所以需要手動 commit 你的改動
conn.commit()
print("insert done")
獲取資料
with conn.cursor(cursor=pymysql.cursors.dictcursor) as cursor:
sql = "select * from mytable2"
cursor.execute(sql)
res = cursor.fetchall()
data = pd.dataframe(res)
data
或者sql = "select * from mytable2"
data = pd.read_sql(sql,conn)
data
常用命令
show tables #檢視所有表
show columns from table_name #檢視表字段
describe table_name #檢視表字段(也可以desc table_name)
mac多版本python安裝 pymysql
系統裡面安裝了多個python的版本,有2.7和3.4等。預設的2.7版本,但我開發需要3.4版本的。預設情況下,用pip安裝pymysql sudo pip install pymysql安裝之後,在命令列裡面測試 import pymysql如果沒有報錯,則表示安裝成功。找到3.4到安裝路徑,我...
Mysql儲存之原生語句操作 pymysql
mysql儲存之原生語句操作 pymysql 關係型資料庫是基於關係模型的資料庫,而關係模型是通過二維表時實現的,於是構成了行列的表結構。表可以看作是某個實體的集合,而實體之間存在聯絡,這個就需要通過表之間的關聯關係來體現,比如主鍵的關聯關係,多個表組成了乙個資料庫,也就是關係型資料庫。其中mysq...
php 支援 mysql php支援mysql配置
想在centos5.2上裝乙個discuz論壇,在突破了apache許可權問題後,發現discuz的提示資訊裡顯示不支援mysql mysql connect 不支援 請檢查mysql 模組是否正確載入 我自己寫個測試檔案 php view plaincopy phpinfo 執行後顯示 c sha...