0

Python と cx_Oracle を使用して、テーブルに行を挿入しようとしています。

con = cx_Oracle.connect(ORACLE_USER+'/'+PASS+'@'+TNS)
cursor = con.cursor()
...
try:
    cursor.executemany("INSERT INTO table(ID,NAME) VALUES(...)"
except cx_Oracle,exc:
    error ,=exc.args
    print error.code
    print error.message
cursor.close()
con.close()

入力ファイルからすべての行を挿入した後、cx_Oracle で選択クエリを使用して、挿入された行を確認できます。ただし、「select * from table;」と入力すると、sqlplus は結果を返しません。cx_Oracle について私が見逃したものはありますか、それとも、リモート db に接続されているときに sqlplus で古い結果を示す Oracle クライアントにバッファがありますか?

4

2 に答える 2

4

挿入をコミットしましたか?

con.commit() #after inserts

また

con.autocommit = true #before inserts
于 2011-05-04T08:33:05.073 に答える
0

逆の問題がありました.sqlqueryを使用して行を追加し、2時間苦しんだ後、この投稿を読んで、セッションを閉じる必要があると推測しました. コンソールを閉じて、なんとかデータを取得しました!

于 2012-02-28T13:58:48.283 に答える