sqlalchemy / cx_oracleでバインドされたパラメーターを使用してテーブルを作成できない

VinceP

バインドされたパラメータを使用して、データベース内で「テーブルの作成」ステートメントを実行したいと思います。これは機能します(バインドされたパラメーターなしで):

from sqlalchemy.sql import text
from sqlalchemy import create_engine

con = create_engine(\\..)
s = text("""create table test_table as select * from dual where 1 = 1 """)
con.execute(s)

ただし、バインドされたパラメーターを使用する場合:

s = text("""create table test_table as select * from dual where 1 = :a """)
con.execute(s, a = 1)

エラーで失敗しますDatabaseError: (cx_Oracle.DatabaseError) ORA-01036: illegal variable name/number

テーブルを作成しない単純なselectステートメントがスムーズに機能するため、このエラーがバインドされたパラメーターと関係があるとは確信していません。

s = text("""select * from dual where 1 = :a """)
con.execute(s, a = 1).fetchall()
#[('X',)]

「テーブルの作成」と「バインドされたパラメータ」にクエリを壊す何かがあるようです。なぜこれが起こっているのか、そしてそれを修正する方法はありますか?

アンソニー・トゥイニンガ

バインド変数は、DDLステートメントでは許可されていません。これが、単純なクエリで期待どおりに機能する理由ですが、createtableステートメントを取得するとすぐに失敗します。残念ながら、バインド変数を使用せずにDDLステートメントを作成する必要があります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

SQLAlchemyを使用してテーブルを作成しますが、データがロードされるまでインデックスの作成を延期します

分類Dev

sqlalchemyからcx_oracleにエンコーディングパラメータを渡します

分類Dev

SQLAlchemyを使用してMSSQLから反映されたメタデータに基づいてMySQLでテーブルを作成します

分類Dev

cx_Oracle / sqlalchemyにデータベーステーブルを反映する

分類Dev

SQLAlchemy1.2.7で定義されたクラスなしで新しいテーブルを作成する方法

分類Dev

自動ロードを使用したPythonおよびSQLAlchemyクラシックマッピング:マッパーは、マップされたテーブルの主キー列をアセンブルできませんでした

分類Dev

SQLサーバーsqlalchemyエンジンとパンダでテーブルを切り捨てない

分類Dev

SQLAlchemyを使用してSQLServerでグラフノードテーブルを作成するにはどうすればよいですか?

分類Dev

SqlAlchemyとcx_Oracleを使用してPandasDataFrameをOracleデータベースに書き込むときにto_sql()を高速化します

分類Dev

SqlAlchemyとcx_Oracleを使用してPandasDataFrameをOracleデータベースに書き込むときにto_sql()を高速化します

分類Dev

sqlalchemyメタデータをテーブルにバインドする方法

分類Dev

SQLAlchemyでクエリを実行するときにパラメータのバインドを回避する

分類Dev

Flaskとsqlalchemy:データベースに保存されているパスを使用してアップロードされたファイルを取得します

分類Dev

SQLAlchemy:パラメーター0のバインドエラー-おそらくサポートされていないタイプ

分類Dev

__new__メソッドが上書きされたクラスを使用したSQLAlchemyテーブルへのマッピング

分類Dev

Flaskを使用した基本的なテーブルの作成-SQLAlchemy

分類Dev

sqlalchemyを使用してsqliteで作成されたデータベースのSQLダンプを取得する方法

分類Dev

テーブル インスタンスを作成するときに sqlalchemy で主キーを作成する

分類Dev

SQLAlchemyによって作成されていないテーブルへの外部キーを使用してモデルを作成します

分類Dev

3つのパラメーターを使用してsqlalchemyでフィルターを使用する方法

分類Dev

SQLAlchemyとFlaskjsonifyを使用して結合されたテーブルをJSON形式で返します

分類Dev

Python-自動ロードされたテーブルを使用したSqlalchemyバイナリ列タイプHEX()およびUNHEX()

分類Dev

sqlalchemyを使用してPythonで「テーブルX AS SELECTを作成する」方法

分類Dev

Postgresを使用してSQLAlchemyでテーブルを作成する方法は?

分類Dev

SQLAlchemyメタデータreflect()を使用して、実際のテーブルオブジェクトを取得するにはどうすればよいですか?

分類Dev

sqlalchemyのカスタムクエリのパラメーターにリストをバインドするにはどうすればよいですか?

分類Dev

SQLAlchemyデータベースにエントリを追加すると、 `sqlite InterfaceError:エラーバインディングパラメータ0-おそらくサポートされていないタイプ`がトリガーされます

分類Dev

pydalを使用してsqlalchemyで作成されたsqliteデータベースを認識する方法は?

分類Dev

なぜこれがsqlalchemyのテーブルを更新しないのですか?

Related 関連記事

  1. 1

    SQLAlchemyを使用してテーブルを作成しますが、データがロードされるまでインデックスの作成を延期します

  2. 2

    sqlalchemyからcx_oracleにエンコーディングパラメータを渡します

  3. 3

    SQLAlchemyを使用してMSSQLから反映されたメタデータに基づいてMySQLでテーブルを作成します

  4. 4

    cx_Oracle / sqlalchemyにデータベーステーブルを反映する

  5. 5

    SQLAlchemy1.2.7で定義されたクラスなしで新しいテーブルを作成する方法

  6. 6

    自動ロードを使用したPythonおよびSQLAlchemyクラシックマッピング:マッパーは、マップされたテーブルの主キー列をアセンブルできませんでした

  7. 7

    SQLサーバーsqlalchemyエンジンとパンダでテーブルを切り捨てない

  8. 8

    SQLAlchemyを使用してSQLServerでグラフノードテーブルを作成するにはどうすればよいですか?

  9. 9

    SqlAlchemyとcx_Oracleを使用してPandasDataFrameをOracleデータベースに書き込むときにto_sql()を高速化します

  10. 10

    SqlAlchemyとcx_Oracleを使用してPandasDataFrameをOracleデータベースに書き込むときにto_sql()を高速化します

  11. 11

    sqlalchemyメタデータをテーブルにバインドする方法

  12. 12

    SQLAlchemyでクエリを実行するときにパラメータのバインドを回避する

  13. 13

    Flaskとsqlalchemy:データベースに保存されているパスを使用してアップロードされたファイルを取得します

  14. 14

    SQLAlchemy:パラメーター0のバインドエラー-おそらくサポートされていないタイプ

  15. 15

    __new__メソッドが上書きされたクラスを使用したSQLAlchemyテーブルへのマッピング

  16. 16

    Flaskを使用した基本的なテーブルの作成-SQLAlchemy

  17. 17

    sqlalchemyを使用してsqliteで作成されたデータベースのSQLダンプを取得する方法

  18. 18

    テーブル インスタンスを作成するときに sqlalchemy で主キーを作成する

  19. 19

    SQLAlchemyによって作成されていないテーブルへの外部キーを使用してモデルを作成します

  20. 20

    3つのパラメーターを使用してsqlalchemyでフィルターを使用する方法

  21. 21

    SQLAlchemyとFlaskjsonifyを使用して結合されたテーブルをJSON形式で返します

  22. 22

    Python-自動ロードされたテーブルを使用したSqlalchemyバイナリ列タイプHEX()およびUNHEX()

  23. 23

    sqlalchemyを使用してPythonで「テーブルX AS SELECTを作成する」方法

  24. 24

    Postgresを使用してSQLAlchemyでテーブルを作成する方法は?

  25. 25

    SQLAlchemyメタデータreflect()を使用して、実際のテーブルオブジェクトを取得するにはどうすればよいですか?

  26. 26

    sqlalchemyのカスタムクエリのパラメーターにリストをバインドするにはどうすればよいですか?

  27. 27

    SQLAlchemyデータベースにエントリを追加すると、 `sqlite InterfaceError:エラーバインディングパラメータ0-おそらくサポートされていないタイプ`がトリガーされます

  28. 28

    pydalを使用してsqlalchemyで作成されたsqliteデータベースを認識する方法は?

  29. 29

    なぜこれがsqlalchemyのテーブルを更新しないのですか?

ホットタグ

アーカイブ