ACC2002: #Deleted in a Linked Table That Has a Field of Type UniqueIdentifier (293657)



The information in this article applies to:

  • Microsoft Access 2002

This article was previously published under Q293657
Advanced: Requires expert coding, interoperability, and multiuser skills.

This article applies only to a Microsoft Access database (.mdb).

For a Microsoft Access 2000 version of this article, see 253837.

SYMPTOMS

When you open a linked SQL Server table that has a field of type UniqueIdentifier, you see #Deleted in the fields of all records.

CAUSE

You have Microsoft Jet 4.0, Service Pack 3 installed on your computer.

RESOLUTION

Obtain Microsoft Jet 4.0 Service Pack 4 (SP4) or later, which contains an updated version of the Microsoft Jet 4.0 database engine.

For additional information about how to obtain the latest Jet 4.0 service pack, click the following article number to view the article in the Microsoft Knowledge Base:

239114 How To: Obtain the Latest Service Pack for the Microsoft Jet 4.0 Database Engine

STATUS

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

MORE INFORMATION

Steps to Reproduce the Behavior

  1. Open the sample project NorthwindCS.adp (log in as the database owner).
  2. Create and then save the following stored procedure with the default name of StoredProcedure1:
    Create Procedure "StoredProcedure1"
    As
    if exists (select * from sysobjects where id =
    object_id(N'[dbo].[GUID_Test]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
    drop table [dbo].[GUID_Test]
    
    
    CREATE TABLE [dbo].[GUID_Test] (
       	[ColA]  uniqueidentifier ROWGUIDCOL  NOT NULL ,
       	[ColB] [varchar] (50) NULL )
                         ON [PRIMARY]
       ALTER TABLE [dbo].[GUID_Test] WITH NOCHECK 
            ADD CONSTRAINT [PK_GUID_Test] PRIMARY KEY  NONCLUSTERED  ([ColA])
                         ON [PRIMARY]  
    
       INSERT INTO GUID_TEST VALUES ('{DBAB6FFE-82B2-4D65-819E-32DD4D904C51}',
          'TESTRECORD1')
       INSERT INTO GUID_TEST VALUES ('{DBAB6FFE-82B2-4D65-819E-32DD4D904C52}',
          'TESTRECORD2')
       INSERT INTO GUID_TEST VALUES ('{DBAB6FFE-82B2-4D65-819E-32DD4D904C53}',
          'TESTRECORD3') 
    
    return
    					
  3. Double-click the StoredProcedure1 stored procedure. This creates a table named GUID_Test in the database.
  4. Create a new Access database called MyTest.mdb.
  5. On the File menu, point to Get External Data, and then click Link Tables.
  6. In the Link dialog box, change Files of type to ODBC Databases.
  7. In the Select Data Source dialog box, open or create a data source name (DSN) that points to NorthwindCS.
  8. Create a linked table to the GUID_Test table that you created earlier in SQL Server. If you are prompted to select an index column, click ColA.
  9. Open the dbo_GUID_Test table. Note that all the fields contain #Deleted.

Modification Type:MajorLast Reviewed:11/17/2003
Keywords:kbbug kbfix KB293657 kbAudDeveloper