2
我在建立的數據庫上運行選擇查詢,使用mysql-python
時遇到問題。問題在於返回一個數字,Python
引用爲long
,而不是查詢的數據 - 應該注意,該數字對應於應該返回的記錄數(我登錄到數據庫並運行查詢從MySQL
來確認)。MySQL-python:SELECT返回'long'而不是查詢
下面是代碼:
db = MySQLdb.connect(db = 'testdb', user='testuser', passwd='test', host='localhost', charset='utf8', use_unicode=True)
dbc = db.cursor()
result = dbc.execute("""SELECT %s FROM example_movie""", ('title',))
urls = [row[0] for row in result]
的最後一段代碼,urls = [row[0] for row in result]
是把一切都變成清單。
錯誤看起來是這樣的:
TypeError: 'long' object is not iterable
當我有蟒蛇print result
返回:
('RESULT:', 52L)
當我附上result
喜歡str(result)
它只是返回的數量52
(不long
)
任何幫助和建議,非常感謝!
嘿感謝採取迴應的時候了!當我執行這個時,它只是打印一個大名單'[u'title,....,u'title]'。有沒有辦法真正獲得這些電影的標題? – DMML
其實!如果我只是執行'dbc.execute(「」「SELECT title FROM example_movie」「」)''使其工作! (與我使用的方法相反)。我會將你的答案標記爲接受!隨意將這一點添加到它。 – DMML
@FortyLashes,不能參數化列名稱,參數變成字符串文字,並且您在輸出中看到它們。 – newtover