2017-10-10 142 views
1

所以我有一個phpmyadmin的SQL數據庫。pymsql插入insert_id返回0使用phpmyadmin

我也有一個本地託管的mysql數據庫,我的代碼需要與他們談話。 有關我的本地的東西,當我在表上運行插入電話,我可以打電話給我保持的連接:

self.connection.insert_id()

,並獲得最後插入的項目的ID。

但是,我這樣做是爲了我的phpMyAdmin的數據庫時,該INSERT_ID始終返回0 的代碼就是:

cmd = 'INSERT INTO meal ({0}) VALUES ({1})'.format(','.join(keys), ','.join(values)) 

和刀片的作品,但INSERT_ID返回0,即使通過phpMyAdmin的我可以看到這個表的'id'鍵是: INT(11)null沒有被選中,自動遞增打開,並且它得到了金鑰匙主鍵圖標

所以我不知道發生了什麼 - 是這是一個錯誤,還是我在做一件非常愚蠢的事情?

謝謝!

編輯: 作爲一個側面說明,我插入確實有被自動遞增appropirately ID鍵的項目,只是沒有被退回:(

回答

0

下面有一些奇怪的事情 - 我發現,如果我做之一:

my_id= self.connection.cursor().rownumber 

my_id= self.connection.insert_id() 

它給我0每一次,但是如果我這樣做:

 my_id= self.connection.cursor().rownumber 
     if my_id== 0: 
      my_id= self.connection.insert_id() 

我得到正確的結果...瘋了嗎?