Consultor Eletrônico



Kbase P115978: Wrong table name in WHERE clause results in SQL92 error -20217
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/16/2008
Status: Unverified

SYMPTOM(s):

Following SELECT run from SQL92 client

SELECT PUB.tab1.nummer, PUB.tab1.zop_signdate, PUB.tab1.code, PUB.VeryLongTableName.name
FROM PUB.tab1, PUB.VeryLongTableName
WHERE ( PUB.tab1.code2=PUB.VeryLongTableName2.code ) AND ( PUB.tab1.code=PUB.VeryLongTableName.code )
AND ( PUB.tab1.number >= 155000 );

[DataDirect][ODBC PROGRESS driver][PROGRESS]-20217-20217

The SQL92 server dies and the two following messages are written within the database log file

Disconnecting client <number> of dead server <number>. (2526)

Disconnecting dead server <number>. (2525)

A .trc file is generated and contains the following PANIC message

PANIC - OPT relop_t::get_tidpred 1 PID <num>

CAUSE:

The query cannot be resolved as within the FROM clause is missing a table referenced within the WHERE clause, but the error was not detected at compilation.

FIX:

Correct the Select statement.
Upgrade to 9.1D09 or to 9.1E where the parser detects the error and returns:
Table/View/Synonym not found (7519)