2017-10-10 1 views
1

したがって、私はphpmyadmin SQLデータベースを持っています。pymsql insert insert_idは、phpmyadminを使用して0を返します

私はまた、ローカルにホストされているmysqlデータベースを持っています。私のコードは、それらの両方に対話する必要があります。私の地元のもののため 私はテーブルの上に挿入呼び出しを実行したとき、私は私の開催接続呼び出すことができます。

self.connection.insert_id()

をし、最後に挿入アイテムのIDを取得します。

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

と挿入作品が、INSERT_ID 0を返し、にもかかわらず、phpmyadminのを経由して私ができる:私は私のphpMyAdminのデータベースにこの操作を行う際に

しかし、INSERT_IDは常にコードだけである0 を返します INT(11)ヌルがチェックされておらず、自動インクリメントがオンになっていて、そのキーの主キーアイコンが表示されていることを確認してください。

何が起こっているのでしょうか?これはバグか、私は信じられないほど馬鹿なことをしていますか?

ありがとうございます!

はEDIT: 側の注意点としては、私は、インサート自動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() 

私は正しい結果を得る...クレイジー?

関連する問題