Consultor Eletrônico



Kbase P15429: The CREATE BUFFER statement succeeds even when table name is
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   1/28/2003
Status: Unverified

FACT(s) (Environment):

Progress 9.1x

SYMPTOM(s):

Multiple databases are connected

Same tables exist in both databases

Creating dynamic database buffers

The CREATE BUFFER statement succeeds even when table name is ambiguous

CAUSE:

Progress does not implement ambiguous checks for the CREATE BUFFER statement due to the amount of overhead required. The actual database table that the CREATE BUFFER statement will end up referring to is whatever one comes first in the local runtime environment.

FIX:

To create a buffer against a specific database table prefix the database name to the buffer name when executing the CREATE BUFFER statement.

For example, assume that two copies of the SPORTS database are connected (i.e. SPORTSA and SPORTSB) and a dynamic buffer for the Customer table of the SPORTSB database is needed. The code for this would be:

DEFINE VARIABLE hBuffer AS HANDLE NO-UNDO.

CREATE BUFFER hBuffer FOR TABLE "SPORTSB.Customer".