BUG: Error When Importing Tables with GUID ( UNIQUEIDENTIFIER ) as Join Column (243742)



The information in this article applies to:

  • Microsoft English Query 7.0

This article was previously published under Q243742

SYMPTOMS

While importing new tables, English Query displays the following error with tables that have GUIDs (UNIQUEIDENTIFIER) as the primary keys involved in relationships:
"Join fields <..> and <..> on the join ... have the data type "Other" Fields with "Other" data type cannot be used as join conditions"

RESOLUTION

There are two possible workarounds for this issue:

Edit all the fields with type Other in the EQ authoring tool and change the type to String. This will not change the database, only the offline copy of the schema. At this point, queries should work.

-or-

Use a data type other than UNIQUEIDENTIFIER for primary keys in the tables you import in English Query for possible join between those tables.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.

MORE INFORMATION

Steps to Reproduce the Error using Microsoft English Query 7.0 and SQL Server 7.0:
  1. Create two tables in SQL Server Northwind database by running the following code from Query Analyzer.
    CREATE TABLE Guid1
        (Id UNIQUEIDENTIFIER primary key,
          I Int)
    go
    CREATE TABLE Guid2
        (Id UNIQUEIDENTIFIER primary key references Guid1,
    	I Int)
    go
    Insert Guid1 Values (Newid(), 1)
    go
    select * from GUID1
    go
    -- use the value of GUID from GUID1 to insert into GUID2
    -- Insert Guid2 Values ('<GUID>',2)
    Go
    select * from Guid2, Guid1 where Guid1.Id = Guid2.Id
    go
    					
  2. Create an ODBC System DSN with SQL Server ODBC driver
  3. Open an English Query project(for example, NorthWind.eqp sample project). Go to File -> "Import New Tables" option and choose the SQL DSN. Select the two tables. You will see the following message:
    "Join filed <..> and <..> ... have the data type "Other"
    Fields with "other" data type cannot be used as join conditions"
    						
    The same error occurs when you try to Test/build the English Query application.

REFERENCES

For additional information on English Query, see SQL Server 7.0 English Query Books Online.

Modification Type:MajorLast Reviewed:7/18/2001
Keywords:kbbug kbDatabase kbDSupport KB243742