Inspire EMEA 2022 On-Demand is live! Watch now, and be sure to save the date for Inspire 2023 in Las Vegas next May.

Alteryx Designer Discussions

Find answers, ask questions, and share expertise about Alteryx Designer and Intelligence Suite.

HELP! Syntax Error Message related to Teradata

criehl
5 - Atom

I am receiving this error on multiple formulas tools 

Error SQLPrepare: [Teradata][ODBC Teradata Driver][Teradata Database] Syntax error, expected something like '(' between the 'Left' keyword and '.'.
 
This is happening after all the Teradata loads and Joins.  It is in the formula tool that added Dimensions and filters.  I took this over from someone and did not touch the workflow other than to change my login credentials.  It ran fine for the other person.
 
Any help would be appreciated.
5 REPLIES 5
JoeS
Alteryx
Alteryx

I assume this is with the In-DB Formula?

 

Are you using the exact same driver and version as your colleague?

criehl
5 - Atom

Yes.

 

AZuc
Alteryx
Alteryx

Hi @criehl ,

 

What I do in cases like this is to check the query that's being sent to Teradata.

 

I use Dynamic Output Indb followed by a Browse tool. Then I can see the final query.

 

You can also take the query from your workflow and try to run in the database to see if it gives you more details about the error.

 

Have in mind that only 3 tools actually send queries to the database (Browse Indb, Write Data Indb and Data Stream Out). All other tools act to modify the query received by the tool before.

André Zuccatti

Sales Engineer - LATAM -
Alteryx, Inc.


ak2018
8 - Asteroid

ak2018_1-1648097191226.png

 

This is my flow. I get the error  Data Stream Out (28) Error SQLPrepare: [Teradata][ODBC Teradata Driver][Teradata Database](-3707)Syntax error, expected something like '(' between the 'Left' keyword and '.'. at the Data Stream Out Tool highlighted in the image. 

The input flow is from a text which I do a data cleanse, select specific fields, filter out fields that may be null or empty, do a date formatting as I need in the inDB database, dump it in a temporary table that is configured in the Data Stream In Tool to drop and recreate.

The Connect In Db Tool has a query that joins with the newly created temporary table with other tables and pulls the required record and I do an inDB Inner Join to pull the records and give it out to the Data Stream Out Tool to bring it back into the workflow. This is my first time doing so and do not know how to run a query after the temporary table is created and to get that data out other than what I have in the workflow in the diagram. 

The Dynamic Output In-DB tool indicates that the query sent out has a table LEFT and another RIGHT from the Inner Join and the above error seems to stem from the fact that there is a period next to the LEFT input subquery.

 

any thoughts or suggestions to get over this hurdle?

ntobon
Alteryx
Alteryx

@criehl  You are running into a known defect: "GDC-1485 - Syntax Error: expected something like '(' between Left and '.'... with Join In-DB if Table/FieldName SQL Style set as “None” ".  

- Affects: Designer, Server, versions 2021.2, 2021.3, 2021.4

- Workaround: Edit Data Connections to make Table/FieldName SQL Style “Quoted”

 

Labels