Warum schlägt meine ODBC sofort nach dem Hinzufügen eines neuen datasatzes?

Unmittelbar nachdem ich einen neuen datasatz in eine SQL-verknüpfte Tabelle von meinem Access 2016 Frontend hinzugefügt habe, erscheint eine ODBC-Fehlermeldung und alle data in der Tabelle werden zu #Name?

Dies ist eine zusammengeführte replizierte database.

Der Rekord wird erfolgreich vor dem Fehler eingefügt, ich kann es sehen, nachdem ich die Tabelle geschlossen und wieder geöffnet habe. Bestehende datasätze können auch bearbeitet und gelöscht werden. Das einzige Problem ist, dass nach einem neuen datasatz hinzugefügt wird, wird die ODBC mit einem ungültigen Cast Specification (# 0) Fehler gelöscht. Es macht keinen Sinn, dass ich ungültige data einbringe, denn der neue datasatz wird mit allen data intakt eingefügt, genau wie ich ihn eingegeben habe. Ich muss nur den Tisch schließen und den Tisch neu öffnen, um die neuen data anzuzeigen.

Ich bin auf zwei Wochen damit beschäftigt und ich fühle mich wie ich alles versucht habe. Ich kann das System nicht jedes Mal erzeugen, wenn ein neuer datasatz in dieser Tabelle hinzugefügt wird. Alle anderen Tabellen in der database sind in Ordnung.

Hier ist mein Tischlayout:

CREATE TABLE [dbo].[TrnRegistration]( [fkClassSchedID] [int] NULL, [fkCompanyID] [int] NULL, [NumberUsers] [int] NULL, [Notes] [nvarchar](max) NULL, [Contact] [nvarchar](50) NULL, [fkUserTypeID] [int] NULL, [fkOrderTypeID] [int] NULL, [OrderRef] [nvarchar](50) NULL, [FloatClassID] [int] NULL, [LocFrstID] [int] NULL, [LocScndID] [int] NULL, [SalesRep] [int] NULL, [RegistrationID] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL, [VerifDate] [bit] NOT NULL DEFAULT ((0)), [rowguid] [uniqueidentifier] ROWGUIDCOL NOT NULL CONSTRAINT [MSmerge_df_rowguid_8C3233BCD5FB4C7AA23281E8C482C778] DEFAULT (newsequentialid()), CONSTRAINT [TrnRegistration_PK] PRIMARY KEY NONCLUSTERED ( [RegistrationID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] 

Wenn ich in dein create create table insert, dann die Verknüpfung mit native 11 funktioniert nicht, aber die Standard-Standard-Treiber (die, die Sie scheinen zu verwenden) funktioniert. Allerdings, da mein Test ist nicht eine replizierte database dann ist es sinnvoll, die Spalte für die Replikation verwendet wird, ist das Problem.

Die einfache Lösung besteht darin, eine view zu erstellen, die die Replikationssäule (rowGuid) hinterlässt. Sie verknüpfen dann diese view anstelle der Tabelle. Sie können natürlich nach der Verknüpfung die ursprüngliche Tabellenverknüpfung löschen und dann die verknüpfte Tabelle mit dem Namen SAME benennen, wie Sie sie in Access verwendet haben – dieser Vorschlag ermöglicht es somit, alle Formulare / Berichte / Code / SQL wie zuvor auf der Grundlage des Originals zu bearbeiten Tabellenname verwendet.

Also mit einer view mit der einen Spalte links, und die Verknüpfung zu dieser view von Access sollte dies zu funktionieren.