以下作品:
<g class="gbar">
<rect x="0" width="20" y="142" height="8" fill="teal"></rect>
<text x="0" y="137">8</text>
</g>
<g class="gbar">
<rect x="40" width="20" y="136" height="14" fill="teal"></rect>
<text x="40" y="131">14</text>
</g>
<g class="gbar">
<rect x="80" width="20" y="89" height="61" fill="teal"></rect>
<text x="80" y="84">61</text>
</g>
//etc...
但是当我用SSCursor替换DictCursor时,aryRes包含None,我得到:
class DB():
def __init__(self, host, user, password, db):
self.conn = pymysql.connect(
host = host,
user = user,
passwd = password,
charset = 'utf8',
cursorclass = pymysql.cursors.DictCursor,
db = db
)
self.cur = self.conn.cursor()
def execute(self, sql):
self.cur.execute(sql)
def fetchone(self):
return self.cur.fetchone()
cf = DB("localhost", "user", "pass", "db")
cf.execute("SELECT Count(*) FROM Table")
aryRes = cf.fetchone()
我尝试了以下所有组合:
warnings.warn("Previous unbuffered result was left incomplete")
我还确认以下内容正确返回(未封装):
import pymysql
import pymysql.cursors
from pymysql import cursors
我错过了哪些会使封装的SSCursors工作? 我是Python的新手,所以请随意纠正你需要注意的任何事情。
忘了提...我正在使用Python 2.7.12
答案 0 :(得分:1)
我认为你有问题,因为你只获取一个结果,而有其他结果。在fetchone
之后,尝试运行fetchall
以清除缓冲区。