0

cx_Oracle.executemany と同等のように、何を使用して除外できますか?

このコードブロックを使用してデータを挿入する非常に単純な例ですが、エントリを削除することは可能ですか?

try:

    con = None

    con = cx_Oracle.connect(uid , pwd, dsn)
    cur = con.cursor()
    cur.executemany(sql,params)
    con.commit()

except cx_Oracle.DatabaseError, e:

        print 'Error %s' % e
        sys.exit(1)

finally:

    if con:

        con.close()
4

1 に答える 1

1

DB-APIは、を使用した複数の行の削除をサポートしていますexecutemany()。Oracleデータベースは手元にありませんが、SQLiteを使用してテストした例を以下に示します。

import sqlite3
conn = sqlite3.connect(':memory:')
conn.execute('create table t (c);')
conn.executemany("insert into t values (?);", ('a','b','c',))
conn.execute('select c from t;').fetchall()
# -> [(u'a',), (u'b',), (u'c',)]
conn.executemany('delete from t where c = ?;', ('a','b',))
conn.execute('select c from t;').fetchall()
# -> [(u'c',)]
conn.close()
于 2013-01-11T21:49:26.187 に答える