我正在学习python,我正在尝试连接数据库:
这是我的代码(简单)(有适当的缩进):
#!/usr/bin/python
import MySQLdb
try:
db = MySQLdb.connect(host="localhost", # your host, usually localhost
user="root", # your username
passwd="root", # your password
db="Ayuda") # name of the data base
except Exception as a:
print a
cur = db.cursor()
cur.execute("SELECT * FROM YOUR_TABLE_NAME")
for row in cur.fetchall() :
print row[0]
所以我收到了这个错误:
(2002,“无法通过套接字连接到本地MySQL服务器 '/var/run/mysqld/mysqld.sock'(2)“)
我该如何解决这个问题?
答案 0 :(得分:0)
我已经解决了:我使用的另一个代码来自mysql的使用示例:http://dev.mysql.com/doc/connector-python/en/myconnpy_example_connecting.html
现在这是我的代码:
import mysql.connector
from mysql.connector import errorcode
try:
cnx = mysql.connector.connect(host="localhost",
user="root",
passwd="root",
db="Ayuda")
except mysql.connector.Error as err:
if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
print("Something is wrong with your user name or password")
elif err.errno == errorcode.ER_BAD_DB_ERROR:
print("Database does not exists")
else:
print(err)
else:
cur = cnx.cursor()
cur.execute("SELECT * FROM mitabla")
for row in cur.fetchall() :
print row[1]
cnx.close()
我仍然不知道为什么我可以用另一种方式连接。