9
我試圖使用Python的(3.4)的MySQL模塊用下面的代碼在本地的MySQL數據庫上查詢:爲什麼MySQL會執行返回無?
class databases():
def externaldatabase(self):
try:
c = mysql.connector.connect(host="127.0.0.1", user="user",
password="password", database="database")
if c.is_connected():
c.autocommit = True
return(c)
except:
return(None)
d = databases().externaldatabase()
c = d.cursor()
r = c.execute('''select * from tbl_wiki''')
print(r)
> Returns: None
據我所知,連接成功後,該數據庫是由若干行但查詢總是返回無類型。
MySQL執行函數的哪些實例返回無?
'c.execute()'不會返回任何東西,除非你使用'multi = True'選項。然後它返回一個迭代器,讓您逐步瀏覽多個查詢中的每個查詢的結果。 – Barmar
通常,您可以調用遊標上的方法來將結果從查詢中取出,例如'c.fetchone()'得到一行,'c.fetchall()'得到所有的結果。 – Barmar
請參閱http://dev.mysql.com/doc/connector-python/en/connector-python-api-mysqlcursor.html – Barmar