英国でデータサイエンスを学ぶ

30代になってから海外で統計学・機械学習・プログラミングを勉強

MENU

sqlite3で"sqlite3.ProgrammingError: Cannot operate on a closed cursor."というエラーが出たので

データベースの練習をしていまして、少しでも使えるツールを増やそうとしています。
まずはpythonからいじれるようにということで、sqlite3をpythonから操作しているのですが、"sqlite3.ProgrammingError: Cannot operate on a closed cursor."というエラーが出ましたので、その備忘メモです。

なんのことは無い非常に単純なミスでして、エラーメッセージに書いてある通り、"cursorが閉じられているので、それに対して操作はできませんよ〜"という通りです。
なので、

c = conn.cursor()

といったような感じでcursor()を操作できるようにしてあげればOKです。
上記のコードのcは別の変数でも問題ないですし、私の場合下記のようにconnというのを指定しているので上記のようなコードになりますが、違う名称を指定した場合はそれに応じて変更が必要です。

conn = sqlite3.connect("データベース名.db")