但是我尝试使用python代码访问数据库连接 我遇到python数据库连接问题。 这是我的代码,我正在使用python版本2.7.10。
import pymysql
class SqlManager:
def __init__(self):
self.conn = None
self.cursor = None
self.host = "127.0.0.1"
self.port = 3306
self.user = "user"
self.passwd = "pw"
self.db_name = "db"
def connect(self):
self.conn = pymysql.connect(
host=self.host, port=self.port, user=self.user, passwd=self.passwd, db=self.db_name)
self.cursor = self.conn.cursor(pymysql.cursors.DictCursor)
self.conn.autocommit(True)
return True
def description(self):
cur = self.cursor.execute("SELECT * FROM user")
for row in cur:
print(row)
实际上我猜我得到了Nonetype的属性错误,也许连接在init部分声明为None,但是我在连接部分做了连接,所以我认为它会起作用,但我不是。
请建议我需要修复的内容或更好的使用方法。
感谢您的帮助。
答案 0 :(得分:1)
在你的构造函数中,
self.cursor = None
然后在description
方法中执行此操作而不初始化属性
cur = self.cursor.execute("SELECT * FROM user")
您可能希望将其更改为
self.conn.cursor.execute("SELECT * FROM user")
当然,您需要在初始化此类后调用connect
方法。