rdawithschemaqaulifiedservertablenames

Cancel Edit [WikiEntry.PreviewButtonText] Save
Summary: SQL Server Everywhere Edition encounters an error when performing the Push operation to server tables with a schema-qualified table name.

The Problem

Whenever a Pull operation is executed, in addition to creating the local table and storing the data returned by the Pull operation in that table, the name of the server table from which the data was Pulled is also stored in the local SQL Server Everywhere database. The current implementation of SQL Server Everywhere Edition (and/or SQL Server Everywhere Server Tools)does not support storing the schema-qualified name of the server table and instead only stores the base table name.
Pull Operation is Unaffected
SQL Server Everywhere Edition can successfully perform the Pull operation using schema-qualified server table names. You can program against and modify the RDA locally created table without any difficulty. The problem that occurs is specific to the Push operation.

Problem Cause

The Push operation fails because the Push attempts to apply the changes to the table using only its base table name rather then using the schema-qualified name. When the table is referred to using only its base table name, SQL Server attempts to locate the table in the default schema (usually dbo) where no table with that name exists.

Workaround

You can workaround the problem by defining a synonym on the server belonging to the default schema (dbo usually) that matches the base table name and refers to the schema-qualified name. This way when the Push attempts to apply the changes using only the base table name, the server understands the operations to be applied to the synonym within the default schema which intern results in the changes being made to the correct table (the one with the SchemaQualifiedName).

When you execute the Pull operation, you can refer to the table using either the synonym or the schema-qualified name. The results are the same.

Example

To successfully perform an RDA Push to the schema-qualified table Purchasing.Vendor, you would define a synonym named Vendor. The following is the SQL command to define the synonym.
		 CREATE SYNONYM Vendor FOR Purchasing.Vendor
	


SeeAlso: SchemaQualifiedName BaseName
Microsoft Communities