擅长:python、mysql、java
<p>首先,类名和变量使用不同的名称,因为类名和连接也使用了相同的名称(“db”)。</p>
<p>接下来,您需要将conn(在您的问题<code>db</code>第3行)定义为<code>self.conn</code>。</p>
<blockquote>
<p>import MySQLdb</p>
<p>class db():</p>
<pre><code>def __init__(self):
self.conn = MySQLdb.connect(host='mysql.server', user='user', passwd='pass', db='app')
self.cur = self.conn.cursor()
def get_data(self):
sql = "SELECT * FROM test"
self.cur.execute(sql)
rs = self.cur
rs.fetchall()
return rs
</code></pre>
</blockquote>
<pre><code>class bleh()
def blarg():
data = DB.get_data()
DB.cur.close()
DB.conn.close()
</code></pre>
<p>注意:如果在类bleh中有多个函数要从数据库中获取数据,请确保在函数中关闭游标和连接,该函数将在最后调用。或者您可以有一个单独的函数,它关闭光标和连接。</p>