Creating tables without double quotes around table and column names
I have a job that is writing data to a PostgreSQL database. In the tPostgresqlOutput components I have selected "Drop table if exists and create" as the "Action on table". Unfortunately, this generates code like this:
stmtCreate_tPostgresqlOutput_1 .execute("CREATE TABLE \"" + tableName_tPostgresqlOutput_1 + "\"(\"rejectReason\" CHAR ,\"file\" VARCHAR not null ,\"rowNumber\" INT4 not null ,\"Name_SalesRep\" VARCHAR(17) )";
As PostgreSQL is case-sensitive regarding table and column names, I then have to use double quotes every time I access these tables, which is 1) annoying and 2) leads to problems in an application I use further on that has to work on this data. Is there a way to prevent Talend from generating code with double quotes? I'm using: Talend Open Studio for Data Integration 5.5.1.r118616 PostgreSQL 9.0.4 Both running on: Mac OS X 10.9.4
Re: Creating tables without double quotes around table and column names
I know this behaviour and yes you are right, this is crap! Actually I do not use this function because I prefer self written SQL DML statements. A couple of options of PostgreSQL is not available if you let the tPostgresqlOutput component create the table (e.g. enums or encoding settings).