2

pysqlite2Pythonでは、クラスを使用してsqliteデータベースと対話できます。

from pysqlite2 import dbapi2 as sqlite

データベースにコマンドを送信する1つの方法は、データベースオブジェクトを使用することです。

db = sqlite.connect('mydb.sqlite')
db.execute('CREATE TABLE IF NOT EXISTS t1(a, b, c)')

別の方法はカーソルを使用することです。

cur = db.cursor()
cur.execute('CREATE TABLE IF NOT EXISTS t2(x, y, z)')

どちらの方法でも機能し、仕事をしますが、一方の方法がもう一方の方法よりも優先される場合があるのではないかと思います。それらのケースは何ですか?

4

1 に答える 1

3

このconnection.executeメソッドはSQLiteAPI拡張機能です。DB-APIでは指定されていません:http ://www.python.org/dev/peps/pep-0249/ 。これは、カーソルを作成して呼び出し、カーソルをexecute返すための省略形です。

コードが他のDB-APIベースのデータベースライブラリで確実に機能するようにしたい場合は、これを使用しないでください。

于 2011-02-03T07:40:37.537 に答える