SQL Anywhere Personal Server Version 126.96.36.1996 dbunload generates the following ALTER TABLE for a proxy table that was originally created on a Version 9 catalog table.
FWIW this is probably a pretty obscure
CREATE EXISTING TABLE "p001"."proxy_V9_SYSCONSTRAINT" ( "constraint_id" unsigned int NOT NULL ,"table_id" unsigned int NOT NULL ,"column_id" unsigned int NULL ,"index_id" unsigned int NULL ,"fkey_id" smallint NULL ,"constraint_type" char(1) NOT NULL ,"constraint_name" char(128) NOT NULL ) AT 'p001..SYS.SYSCONSTRAINT' LOCAL ONLY go ALTER TABLE "p001"."proxy_V9_SYSCONSTRAINT" ADD UNIQUE ( "table_id","constraint_name" ) go ***** SQL error: Feature 'Alter remote table' not implemented
Note: I did not create the UNIQUE constraint (how could I?) but it exists in the V11 system tables. I think under certain circumstances the CREATE EXISTING TABLE command creates local thingies like this for some reason, perhaps performance. Since a proxy table has no rows, ever, a local constraint makes no sense except as a hint for cross-database queries... AFAIK.
This may open a can of worms for dbunload... just how is it SUPPOSED to add these hints to the reload sql file?
Yup, it's a bug that needs to be fixed. We will open a case for the issue and get the problem resolved.
answered 20 Oct '10, 18:43