So greifen Sie von Anaconda aus auf MySQL zu. Python benötigt viel Zeit, um auf MySQL zuzugreifen.
Selbst mit> 2.7.x funktioniert es, wenn Sie () von print () nehmen. Das ist der Unterschied.
Der Fahrer ist
Ich werde zwei davon versuchen.
Verwenden Sie vorerst this.
conda install -c https://conda.anaconda.org/anaconda mysql-connector-python
Aus irgendeinem Grund ist es ein bisschen wie PHP geschrieben. DB-Schema usw. werden weggelassen.
#coding:utf-8
import mysql.connector
#Verbindungsinformationen
dbh = mysql.connector.connect(
host='localhost',
port='3306',
db='testdb',
user='dbuser',
password='password',
charset='utf8'
)
#Cursor holen
stmt = dbh.cursor(buffered=True)
#SQL
sql = "select * from members"
#Lauf
stmt.execute(sql)
#Erhalten
rows = stmt.fetchall()
#Schleife
for row in rows:
print(row[1])
#Aufräumen
stmt.close()
dbh.close()
Nachtrag: Ich dachte, ich würde nur das Lese-SQL ändern, aber es ist ein bisschen anders. Es sieht so aus, als müssten Sie Commit () ausführen.
#coding:utf-8
import mysql.connector
#Verbindungsinformationen
dbh = mysql.connector.connect(
host='localhost',
db='testdb',
user='dbuser',
password='password'
)
#Cursor holen
stmt = dbh.cursor(buffered=True)
#SQL
sql = "insert into members(name) values('foo');"
#Lauf
stmt.execute(sql)
#verpflichten
dbh.commit()
#Aufräumen
stmt.close()
dbh.close()
Es gab einen guten Artikel in hier.
Hier war hilfreich. Auch Honke? Site.
In meiner Umgebung arbeitete nur PyMySQL mit Django. ..
pip install PyMySQL
Der Code sieht so aus. Es ist etwas anders.
#coding:utf-8
import pymysql
#Verbindungsinformationen
dbh = pymysql.connect(
host='localhost',
user='dbuser',
password='password',
db='testdb',
charset='utf8',
cursorclass=pymysql.cursors.DictCursor
)
#Mauszeiger
stmt = dbh.cursor()
#SQL
sql = "select * from auth_user"
#Lauf
stmt.execute(sql)
#Erhalten
rows = stmt.fetchall()
#Schleife
for row in rows:
print(row)
#Aufräumen
stmt.close();
dbh.close();
Sie benötigen noch commit ().
#coding:utf-8
import pymysql
#Verbindungsinformationen
dbh = pymysql.connect(
host='localhost',
user='dbuser',
password='password',
db='testdb',
charset='utf8',
cursorclass=pymysql.cursors.DictCursor
)
#Mauszeiger
stmt = dbh.cursor()
#SQL
sql = "insert into members(name) value('pymysql1')"
#Lauf
stmt.execute(sql)
#verpflichten
dbh.commit()
#Aufräumen
stmt.close()
dbh.close()
Recommended Posts