Try passing a small number to `label_length` in your `create_engine`. Something like `label_length=5` might work. I typically use 4-6 on Production/Staging servers, and no argument on Development.
* https://docs.sqlalchemy.org/en/14/core/engines.html#sqlalchemy.create_engine.params.label_length I don't have Oracle, so I am not sure if this fixes your exact problem or just related ones. `label_length` will limit the length of aliases that sqlalchemy generates. so you would see something like this: - SELECT very_long_table_name_i_mean_it_is_long.id AS very_long_table_name_i_mean_it_is_long_id, very_long_table_name_i_mean_it_is_long.foo_bar_biz_bang_bash_boom_bomb_bing_bong_foo AS very_long_table_name_i_mean_it_is_long_foo_bar_biz_bang_bash_boom_bomb_bing_bong_foo FROM very_long_table_name_i_mean_it_is_long LIMIT ? OFFSET ? + SELECT very_long_table_name_i_mean_it_is_long.id AS _1, very_long_table_name_i_mean_it_is_long.foo_bar_biz_bang_bash_boom_bomb_bing_bong_foo AS _2 FROM very_long_table_name_i_mean_it_is_long LIMIT ? OFFSET ? If the exception is caused by the generated alias (notice the underscore separator) `very_long_table_name_i_mean_it_is_long_foo_bar_biz_bang_bash_boom_bomb_bing_bong_foo` being too long, that will solve your problem. but if the exception is caused by (notice the dot separator in table/column addressing) "very_long_table_name_i_mean_it_is_long.foo_bar_biz_bang_bash_boom_bomb_bing_bong_foo" , then I don't know the remedy. On Monday, March 22, 2021 at 8:28:10 AM UTC-4 durand...@gmail.com wrote: > Hello, > > SqlAchemy automatically specify the table name in front of columns and > thus my query parameters are too long and I get the > "(cx_Oracle.DatabaseError) ORA-00972" error on Oracle. For example if my > table name is "TABLE_NAME_TOO_LONG" and my columns are "id" and "name" a > request will look like this: > > SELECT "TABLE_NAME_TOO_LONG".id, "TABLE_NAME_TOO_LONG".name FROM > "TABLE_NAME_TOO_LONG" where ... > > I could use alias for select request in order to bypass this issue if I > understand well ( > https://www.tutorialspoint.com/sqlalchemy/sqlalchemy_core_using_aliases.htm > ). > > However for an insert I cannot find any solution. > > Is there a way to set an alias to a table name for an insert ? or remove > the table name ? > > Best regards ;) > > > -- SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper http://www.sqlalchemy.org/ To post example code, please provide an MCVE: Minimal, Complete, and Verifiable Example. See http://stackoverflow.com/help/mcve for a full description. --- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sqlalchemy/0435579f-8db8-4525-b3b3-54e5edeb243fn%40googlegroups.com.