By not showing all your code, it is difficult to say what you have done wrong. Post a VERY SIMPLE and SHORT complete example that shows what you are trying to do and how you are trying to do it...
The actual Oracle error ORA-00904 suggests that the query sqlalchemy is throwing to the Oracle database contains a non-existent column name, not an issue with a date or timestamp.
Add debug your code and output to screen the actual query sqlalchemy is trying to send to the database.
As a general tip, use sqlplus to test out "stuff". If you don't already have it on your machine, you can download Oracle instantclient and tools from here:
With basic or basic-light and sqlplus installed you can run the above sqlalchemy debug output query in an Oracle client, connected to the database with the same credentials, and see exactly what line and where the error is occurring. Yo can also "describe" the table you are trying to insert into, or select from, or what ever.
Here's a very simple example sqlplus session with a simple SELECT query failing, to give you an idea of how you would start to debug your above error in sqlplus:
$ sqlplus gaz/gaz@host:port/service_name ... SQL> select col1, 2 dummy 3 from dual; select col1, * ERROR at line 1: ORA-00904: "COL1": invalid identifier SQL> describe dual Name Null? Type ----------------------------- -------- -------------------- DUMMY VARCHAR2(1) SQL> l 1 select col1, 2 dummy 3* from dual SQL> 1 1* select col1, SQL> c/col1,// 1* select SQL> l 1 select 2 dummy 3* from dual SQL> / D - X 1 row selected. SQL>