質問: conn.execute("DROP DATABASE income;") ``` とcursor()メソッドを使わなくてもできるはずです。 cursor()メソッドを使う書き方と使わない書き方はどのように違うのでしょうか? 上記2つのコードの用途のちがいはどのようなのでしょうか?
回答: まず、そもそもカーソルって何?何のために使うの?という疑問は各DBMSの公式ドキュメントで詳しく解説されているので勉強してください。 * カーソル | PostgreSQL 9.2.4文書 * MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.6.6 カーソル 次の Python のDBコネクタにおけるカーソルは次の解説がわかりやすかったです。 * PythonとDB: DBIのcursorを理解する - Qiita というわけで、1つめのサンプルコードのようなトランザクションを使わずに `DROP DATABASE` を行う処理にカーソルを使う意味はありません。