1. 要想使python可以操作mysql資料庫,首先需要安裝mysql-python包,在centos上可以使用一下命令來安裝
$ sudo yum install mysql-python
2. 啥都不說了,走兩步吧,下面的程式建立了乙個到mysql資料庫的連線,然後執行了乙個簡單的查詢,並列印查詢結果
import mysqldb
conn = mysqldb.connect (host = "172.17.23.121", user = "fkong", passwd = "fkong", db = "fkong")
cursor = conn.cursor ()
cursor.execute ("select version()")
row = cursor.fetchone ()
print "mysql server version:", row[0]
cursor.close ()
conn.close ()
3. 下面看乙個資料庫建表和插入操作
import mysqldb
conn = mysqldb.connect (host = "172.17.23.121", user = "fkong", passwd = "fkong", db = "fkong")
cursor = conn.cursor ()
cursor.execute ("""
create table test
( id int,
col1 varchar(40),
col2 varchar(40),
col3 varchar(40)
) """)
cursor.execute ("""
insert into test (id, col1, col2, col3)
values
(1, 'a', 'b', 'c'),
(2, 'aa', 'bb', 'cc'),
(3, 'aaa', 'bbb', 'ccc')
""")
conn.commit()
cursor.close ()
conn.close ()
4. 下面再來看看查詢,查詢通常有兩種方式:一種是使用cursor.fetchall()獲取所有查詢結果,然後再一行一行的迭代;另一種每次通過cursor.fetchone()獲取一條記錄,直到獲取的結果為空為止。看一下下面的例子:
import mysqldb
conn = mysqldb.connect (host = "172.17.23.121", user = "fkong", passwd = "fkong", db = "fkong")
cursor = conn.cursor ()
cursor.execute ("select * from test")
rows = cursor.fetchall()
for row in rows:
print "%d, %s, %s, %s" % (row[0], row[1], row[2], row[3])
print "number of rows returned: %d" % cursor.rowcount
cursor.execute ("select * from test")
while (true):
row = cursor.fetchone()
if row == none:
break
print "%d, %s, %s, %s" % (row[0], row[1], row[2], row[3])
print "number of rows returned: %d" % cursor.rowcount
cursor.close ()
conn.close ()
MySQL實戰之鎖
來自極客時間,林曉斌 丁奇 的mysql實戰45講 全域性鎖就是對整個資料庫例項加鎖。mysql 提供了乙個加全域性讀鎖的方法,命令是flush tables with read lock ftwrl 當你需要讓整個庫處於唯讀狀態的時候,可以使用這個命令,之後其他執行緒的以下語句會被阻塞 應用場景 ...
Python實戰之pymysql模組實戰
安裝 pip3 install pymysql author burgess zheng usr bin env python coding utf 8 import pymysql 建立連線 conn pymysql.connect host 10.0.0.150 port 3306,user p...
Python實戰之MySQL資料庫操作
1.要想使python可以操作mysql資料庫,首先需要安裝mysql python包,在centos上可以使用一下命令來安裝 sudo yum install mysql python2.啥都不說了,走兩步吧,下面的程式建立了乙個到mysql資料庫的連線,然後執行了乙個簡單的查詢,並列印查詢結果 ...