2011-08-07 57 views
1

我們在Sql Server 2005中有一個數據庫,MS Access作爲前端。後端最初是在訪問並稍後轉移到Sql服務器。MS Access Int和Sql Server Big INT

sql server中表中的一個字段的數據類型爲int,其中包含主鍵。現在我相信int數據訪問類型的限制是32767是最大的整數。

領域具有自動增量與主鍵設置,它已經達到了這個數字32767

我試圖改變從int數據類型爲bigint,但在前端接入開始嘔吐所有類型的錯誤。其中一個錯誤是「數據類型不匹配」。

謝謝 瑜伽。

回答

2

在SQL Server

  • SMALLINT簽訂16位,按您的意見(-32768至+32767)
  • INT簽訂32位,所以-2.1十億到百億+2.1
  • BIGINT簽訂64位,所以-huge至+巨大

你可以從MSDN 得到這個很容易。不需要「相信」

更重要的是,您不需要在SQL Server中進行任何更改,也不需要生成這些錯誤。這些錯誤可能來自外鍵錯誤或依賴於此列的int。

無論如何,如果它真的 SMALLINT,你已經達到了32767,你可以只改變從種子和增量(-32768,1)使用範圍的另一半......

+1

在換句話說,SQL Server SMALLINT = Jet/ACE INTEGER和INT = LONG INTEGER。 Jet/ACE沒有對應於BIGINT的數據類型,所以當在SQL Server表中使用它作爲PK時,您必須使用各種解決方法。 –