2011-01-17 5 views
1

bekam ich eine SQL Server Tabelle Preislisten:Zugang verknüpfte Tabelle zu SQL Server: TinyInt falsche Zuordnung

CREATE TABLE [dbo].[PriceLists](
    [PriceListId] [tinyint] IDENTITY(1,1) NOT NULL, 
    [PLName] [varchar](20) NULL, 
CONSTRAINT [PK_PriceLists] PRIMARY KEY NONCLUSTERED 

Wenn ich es in Access 2007 verknüpfen, Zugang setzt die PriceListId auf Long Integer (was falsch ist).
Wenn ich andere Tabellen verknüpfe, in denen das TinyInt nicht "AutoNumber" (in Access-Jargon) ist, verknüpft es ordnungsgemäß als ein Byte-Feld.
Gibt es Hinweise darauf, die Tabelle korrekt anzubringen, damit die PriceListId als AutoNumber, Byte-Feld angezeigt wird?

+1

Gibt es ein Problem? Das heißt, trotz der Tatsache, dass Access denkt, der numerische Typ ist Long Integer (SQL Server der regulären Ganzzahl), da Access diese Werte nicht schreibt, wo ist das Problem? Gibt es irgendwo einen Fehler? –

+0

@ David: kein Problem in der Tat. Aber es ist einfach falsch, und ich befürchte, es würde Probleme mit Links verursachen. Sie müssen eine Long Integer (Autonummer) mit einem Byte verknüpfen. –

+0

Scheint mir, dass es viel weniger ein Problem als wenn Ihr SQL Server Autoincrement-Feld BIGINT ist, die Access überhaupt nicht verstehen kann, so dass Sie am Ende durch Reifen springen (mit CAST und so), damit zu arbeiten. Es scheint mir, wenn du mit BIGINT arbeitest (so wie du kannst), wird TINYINT viel weniger ein Problem sein, und ich kann mir wirklich kein Problem vorstellen, zu dem es führen würde. –

Antwort

Verwandte Themen