匯入或連結至 SQL Server 資料庫的資料

您可以連結或匯入 SQL Database 中的資料;這類資料庫屬於高效能受管資料庫,適用於具任務關鍵性的應用程式。如需詳細資訊,請參閱 SQL Server 2016

  • 當您連結至資料時,Access 會建立雙向連線,來同步處理 Access 和 SQL Database 中的資料變更。

  • 而當您匯入資料時,Access 會建立一次性的資料複本,此時 Access 或 SQL Database 中的資料變更不會同步處理。

將 Access 連結到 SQL Server 的概觀

開始之前

想要順利完成所有作業嗎?請在執行連結或匯入之前,進行以下準備作業:

  • 找出 SQL Server 資料庫的伺服器名稱,識別必要的連線資訊,並選擇一種驗證方法 (Windows 或 SQL Server)。如需驗證方法的詳細資訊,請參閱連線至伺服器 (資料庫引擎) 以及保護您資料庫的安全

  • 找出您要連結或匯入的資料表或檢視,以及連結資料表的唯一值欄位。您可在單一作業中連結至或匯入多個資料表或檢視。

  • 請留意每個資料表或檢視中的欄數。Access 在單一資料表中最多只支援 255 個欄位,因此 Access 只會連結或匯入前 255 個欄。為因應此限制,您可以在 SQL Server Database 中建立檢視,以存取超出數量上限的欄。

  • 決定要匯入的總資料量。Access 資料庫的大小上限為 2 GB (扣除系統物件所需的空間後)。如果 SQL Server 資料庫包含大型資料表,您可能無法將所有資料表匯入單一 Access 資料庫。在此情況下,請考慮連結至資料,而不要採用匯入的方式。

  • 使用值得信任的位置和 Access 資料庫密碼,以保護 Access 資料庫和當中內含之連線資訊的安全。這個動作非常重要,尤其是當您選擇將 SQL Server 密碼儲存在 Access 中時。

  • 建立額外關聯的方案。Access 不會在匯入作業結束時,自動建立相關資料表之間的關聯。您可以使用 [資料庫關聯圖] 視窗,手動在新的和現有資料表之間建立關聯。如需詳細資訊,請參閱什麼是 [資料庫關聯圖] 視窗?以及建立、編輯或刪除關聯

階段 1:開始使用

  1. 選取 [外部資料] > [新增資料來源] > [從資料庫] > [從 SQL Server]。

  2. 在 [取得外部資料 - ODBC 資料庫] 對話方塊中,執行下列其中一項操作:

    • 若要匯入資料,請選取 [匯入來源資料至目前資料庫的新資料表]。

    • 若要連結至資料,請選取 [以建立連結資料表的方式,連結資料來源]。

  3. 選取 [確定]。

階段 2:建立或重複使用 DSN 檔案

您可以建立 DSN 檔案或重複使用現有的 DSN 檔案。DSN 檔案可用來將相同的連線資訊用於不同的連結和匯入作業,或是用來與同樣使用 DSN 檔案的其他應用程式共用內容。您可以使用資料連線管理員直接建立 DSN 檔案。如需詳細資訊,請參閱管理 ODBC 資料來源

雖然您仍然可以使用舊版 SQL ODBC 驅動程式,但我們建議您使用包含許多改善項目且支援 SQL Server 2016 新功能的版本 13.1。如需詳細資訊,請參閱 Windows 上的 Microsoft ODBC Driver for SQL Server

  1. 請執行下列其中一項操作:

    • 如果您想使用的 DSN 檔案已經存在,請從清單中選取該檔案。

      [選取資料來源] 對話方塊

      根據您在連線資訊中輸入的驗證方法而定,您可能需要再次輸入密碼。

    • 若要建立新的 DSN 檔案:

      1. 選取 [新增]。

        [建立新資料來源] 對話方塊
      2. 選取 [ODBC Driver 13 for SQL Server],然後選取 [下一步]。

      3. 輸入 DSN 檔案名稱,或按一下 [瀏覽] 以在其他位置建立檔案。

  2. 按一下 [下一步] 以檢閱摘要資訊,然後按一下 [完成]。

階段 3:使用 [建立新的資料來源至 SQL Server] 精靈

在 [建立新的資料來源至 SQL Server] 精靈中,執行下列操作:

  1. 在第一個頁面上,輸入識別資訊:

    • 在 [描述] 方塊中,您也可以輸入有關 DSN 檔案的文件資訊。

    • 在 [伺服器] 方塊中,輸入 SQL Server 的名稱。請不要點選向下箭號。

  2. 在第二個頁面上,選取以下其中一種驗證方法:

    • 使用整合式 Windows 驗證   :透過 Windows 使用者帳戶連線。您也可以選擇輸入服務主體名稱 (SPN)。如需詳細資訊,請參閱用戶端連線 (ODBC) 中的服務主體名稱 (SPN)

    • 使用 SQL Server 驗證   :輸入登入識別碼密碼,以使用在資料庫中設定的認證來連線。

  3. 在第三個和第四個頁面上,您可以選取自訂連線的各種選項。如需這些選項的詳細資訊,請參閱 Microsoft ODBC Driver for SQL Server

  4. 設定確認畫面隨即出現。選取 [測試資料來源] 來確認您的連線。

  5. 您可能需要登入資料庫。在 [SQL Server 登入] 對話方塊中,輸入登入識別碼與密碼。若要變更其他設定,請選取 [選項]。

階段 4:選取要連結或匯入的資料表

  1. 在 [連結資料表] 或 [匯入物件] 對話方塊的 [資料表] 底下,選取您要連結或匯入的每個資料表或檢視,然後按一下 [確定]。

    要連結或匯入的資料表清單
  2. 在連結作業中,決定是否要選取 [儲存密碼]。

    安全性    選取此選項之後,您就不必在每次開啟 Access 並存取資料時輸入認證資訊。不過,這樣會將未經加密的密碼儲存在 Access 資料庫,這表示可存取來源內容的人員都能查看使用者名稱與密碼。如果您選取此選項,我們強烈建議您將 Access 資料庫儲存在值得信任的位置,並建立 Access 資料庫密碼。如需詳細資訊,請參閱決定是否要信任資料庫,以及使用資料庫密碼將資料庫進行加密

階段 5:建立規格與工作 (僅限匯入)

結果​​

連結或匯入作業完成時,資料表會顯示在瀏覽窗格中,名稱格式為 SQL Server 資料表或檢視的相同名稱加上擁有者名稱。例如,如果 SQL 名稱為 dbo.Product,則 Access 名稱會是 dbo_Product。如果該名稱已被使用,Access 會在新的資料表名稱中加上 "1",例如 dbo_Product1。如果 dbo_Product1 也已被使用,Access 會建立 dbo_Product2,以此類推。不過,您可以重新命名,為資料表賦予更有意義的名稱。

在匯入作業進行期間,Access 絕對不會覆寫資料庫中的資料表。雖然您無法直接將 SQL Server 資料附加到現有資料表,但您可以建立新增查詢,以便在從相似的資料表中匯入資料後附加資料。

連結作業期間,如果欄在 SQL Server 資料表中處於唯讀狀態,則這些欄在 Access 中也會是唯讀狀態。

祕訣   :若要查看連接字串,請將游標暫留在 Access 瀏覽窗格中的資料表上。

更新連結的資料表設計

您無法在連結資料表中新增、刪除或修改欄,或是變更資料類型。如果您想要變更設計,請在 SQL Server 資料庫中進行。若要在 Access 中查看設計變更內容,請更新連結資料表:

  1. 選取 [外部資料] > [連結資料表管理員]。

  2. 選取您要更新的每個連結資料表,選取 [確定],然後選取 [關閉]。

比較資料類型

Access 資料類型的名稱與 SQL Server 資料類型不同。例如,在匯入或連結至 Access 之後,SQL Server 欄的 [bit] 資料類型會變成 [是/否] 資料類型。下表將比較 SQL Server 與 Access 的資料類型。

SQL Server 資料類型

Access 資料類型

Access 欄位大小

bigint

大型數字

請參閱使用大型數字資料類型

binary (欄位大小)

二進位

與 SQL Server 欄位大小相同

bit

是/否

char (欄位大小),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

char (欄位大小),其中欄位大小大於 255

備忘

datetime

日期/時間

decimal (整數位數、小數位數)

數值

十進位 (Access 整數位數與小數位數屬性與 SQL Server 的整數位數與小數位數相符)。

float

數值

雙精準數

image

OLE 物件

int

數值

長整數

money

貨幣

nchar (欄位大小),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

nchar (欄位大小),其中欄位大小大於 255

備忘

ntext

備忘

numeric (整數位數、小數位數)

數值

十進位 (Access 整數位數與小數位數屬性與 SQL Server 的整數位數與小數位數相符)。

nvarchar (欄位大小),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

nvarchar (欄位大小),其中欄位大小大於 255

備忘

nvarchar(MAX)

備忘

real

數值

單精準數

smalldatetime

日期/時間

smallint

數值

整數

smallmoney

貨幣

sql_variant

文字

255

text

備忘

timestamp

二進位

8

tinyint

數值

位元組

uniqueidentifier

數值

複寫識別碼

varbinary

二進位

與 SQL Server 欄位大小相同

varbinary (MAX)

OLE 物件

varchar (欄位大小),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

varchar (欄位大小),其中欄位大小大於 255

備忘

varchar(MAX)

備忘

xml

備忘

您可以透過連結或匯入的方式,在 Access 資料庫中處理儲存在 SQL Server 的資料。如果您要與他人共用資料,連結會是較好的選擇,這樣資料可儲存在集中的位置,以便您檢視最新資料、新增或編輯資料,並在 Access 中執行查詢或產生報表。

附註:  本文內容不適用於 Access 應用程式 - 此為使用 Access 設計及線上發佈的新式資料庫。如需詳細資訊,請參閱建立 Access 應用程式

步驟 1:準備進行連結

  1. 找出您要連結的 SQL Server 資料庫。如有必要,請連絡資料庫系統管理員以取得連線資訊。

  2. 確認在 SQL Database 中您所要連結的資料表和檢視。您可以同時連結至多個物件。

檢閱來源資料並考量下列事項:

  • Access 在資料表中最多僅支援 255 個欄位 (欄),因此連結資料表只會包含您所連結之物件的前 255 個欄位。

  • 在 SQL Server 資料表中唯讀的欄,在 Access 中也會是唯讀的。

  1. 若要在新的資料庫中建立連結資料表,請按一下 [檔案] > [新增] > [空白桌面資料庫]。若要在現有的 Access 資料庫中建立連結資料表,請確定您具有必要權限,能將資料新增至資料庫。

    附註:  在現有 Access 資料庫中建立的連結資料表會取得與來源物件相同的名稱。所以,如果您已有另一個具相同名稱的資料表,新的連結資料表名稱後會加上一個 "1",例如 Contacts1。(如果 Contacts1 已使用,則 Access 會建立 Contacts2,依此類推。)

步驟 2:連結至資料

連結至 SQL Server 資料庫中的資料表或檢視時,Access 會建立反映來源資料表結構和內容的新資料表 (也稱為連結資料表)。您可以在 SQL Server 或 Access 的 [資料工作表檢視] 或 [表單檢視] 中變更資料,且該變更會反映在 SQL 和 Access 中。任何對連結資料表進行的結構變更 (如移除或變更欄),皆必須由 SQL Server 進行,而不是在 Access 進行。

  1. 開啟目的 Access 資料庫。

  2. 按一下 [外部資料] 索引標籤的 [ODBC 資料庫]。

  3. 按一下 [以建立連結資料表的方式,連結至資料來源] > [確定],然後按照精靈中的步驟進行。在 [選取資料來源] 方塊中,如果您想要使用的 .dsn 檔案已存在,即可在清單中按一下該檔案。

    若要建立新的 .dsn 檔案:

    按一下 [選取資料來源] 方塊中的 [新增] > [SQL Server] > [下一步]。

    1. 輸入 .dsn 檔案的名稱,或按一下 [瀏覽]。

      附註: 您必須具備資料夾的寫入權限,才能儲存 .dsn 檔案。

    2. 按一下 [下一步] 檢閱摘要資訊,再按一下 [完成]

      依照 [建立新的資料來源至 SQL Server] 精靈中的步驟進行。

  4. 按一下 [確定],再按一下 [資料表] 下您想連結的每一個資料表或檢視,然後按一下 [確定]。

如果您看到 [選取唯一記錄識別碼],表示 Access 無法判斷哪個欄位或哪些欄位可以唯一地識別來源資料的每一列。只要選取每一列的唯一欄位或欄位組合即可,如果不確定的話,請洽詢 SQL Server 資料庫系統管理員。

連結作業完成後,您可在 [瀏覽窗格] 中看到新的連結資料表或資料表。

套用最新的 SQL Server 物件結構

當您開啟連結資料表或來源物件時,會見到最新的資料。但是,如果 SQL Server 物件有任何結構變更,則需要更新連結資料表以查看那些變更。

  1. 以滑鼠右鍵按一下瀏覽窗格中的資料表,然後按一下捷徑功能表中的 [連結資料表管理員]。

  2. 選取您要更新之每個連結資料表旁邊的核取方塊,或按一下 [全選] 以選取全部的連結資料表。

  3. 按一下 [確定] > [關閉]。

附註: 由於 Access 資料類型與 SQL Server 資料類型不同,Access 會連結至每一欄最適合的資料類型。您只能在 Access 檢視指派的資料類型,而無法變更。

如需詳細資訊,請參閱共用 Access 桌面資料庫的方法

頁面頂端

如果您的部門或工作群組使用 Microsoft SQL Server 來儲存資料,您可能會需要在 Access 中處理一些 SQL Server 資料。

您可以透過兩種方式將資料從 SQL Server 物件 (資料表或檢視) 加入 Access:匯入或連結。這兩種程序的差異如下:

  • 匯入資料時,Access 會建立 SQL Server 資料的複本。若您之後在 Access 資料庫中對資料進行任何變更,變更並不會反映在 SQL Server 資料庫中。同樣地,SQL Server 資料表或檢視之後如有任何變更,也不會反映在 Access 中。

  • 而連結至 SQL Server 資料,就等於是直接連線至來源資料,因此之後若在 Access 中對資料進行任何變更,也會一併反映在 SQL Server 中;反之亦然。

本文將說明如何匯入或連結至 SQL Server 資料。

決定要匯入或連結

適用匯入的情況

一般而言,將 SQL Server 資料匯入至 Access 資料庫的原因如下:

  • 您不再需要將資料存放於 SQL Server 資料庫中,因此要永久將 SQL Server 資料搬至 Access 資料庫。當您將資料匯入 Access 後,即可將資料從 SQL Server 資料庫中刪除。

  • 您的部門或工作群組使用 Access,但為了某筆必須合併至其中一個 Access 資料庫的資料,您偶爾會指向 SQL Server 資料庫。

由於匯入 SQL Server 資料時,系統會在 Access 資料庫中建立資料複本,因此您需在匯入程序期間指定要複製的資料表或檢視。

適用連結的情況

一般而言,連結至 SQL Server 資料的原因如下:

  • 為了直接連線至來源資料,以同時在 SQL Server 資料庫與 Access 資料庫中檢視及編輯最新資料。

  • SQL Server 資料庫包含多個大型資料表,您無法將所有資料表匯入單一 .accdb 檔案。Access 資料庫的大小上限為 2 GB (扣除系統物件所需的空間後)。

  • 您想根據 SQL Server 的資料執行查詢並產生報表,但又不想建立資料複本,這時請考慮連結至 SQL Server。

  • 您的部門或工作群組使用 Access 執行報表與查詢功能,並使用 SQL Server 儲存資料。而個別小組可以建立 SQL Server 資料表和檢視來將資料集中儲存,但有時這筆資料必須匯入桌面程式,以進行彙總及產生報表。此時,連結是理想的選擇,因為此做法不但可讓 SQL Server 資料庫和 Access 資料庫的使用者新增及更新資料,還可隨時檢視及處理最新資料。

  • 您是 Access 使用者,且最近才開始使用 SQL Server。您將數個資料庫移轉到了 SQL Server,而這些資料庫中大部分的資料表都是連結資料表。從現在起您不打算再建立 Access 資料表,而要改為在 SQL Server 中建立資料表和檢視,再從 Access 資料庫連結這些物件。

  • 您想要繼續將資料儲存在 SQL Server,但也想使用 Access 中的最新資料來執行查詢,以及列印您在 Access 中設計的報表。

頁面頂端

從 SQL Server 匯入資料

準備匯入

匯入作業期間,Access 會建立資料表,然後將 SQL Server 資料庫的資料複製到該資料表中。匯入作業結束時,您可以選擇將匯入作業的詳細資料儲存為規格。

附註: 匯入規格可協助您日後重複同樣的匯入作業,而不必每次都從頭逐步進行匯入精靈的步驟。

  1. 針對您要匯入的資料,找到其所屬的 SQL Server 資料庫。請連絡資料庫系統管理員,以取得連線資訊。

  2. 找出您要匯入的資料表或檢視。您可以在單一匯入作業中一次匯入多個物件。

  3. 檢閱來源資料,並留意下列事項:

    • Access 在單一資料表中最多只支援 255 個欄位,因此 Access 只會匯入前 255 個欄。

    • Access 資料庫的大小上限為 2 GB (扣除系統物件所需的空間後)。如果 SQL Server 資料庫包含多個大型資料表,您可能無法將所有資料表匯入 .accdb 檔案。在此情況下,建議您考慮改為將資料連結至 Access 資料庫。

    • Access 不會在匯入作業結束時自動建立相關資料表之間的關聯。您必須使用 [資料庫關聯圖] 視窗中的選項,手動建立各種新資料表與現有資料表之間的關聯。顯示 [資料庫關聯圖] 視窗的方法如下:

      • 按一下 [檔案] 索引標籤,然後按一下 [資訊] 索引標籤上的 [資料庫關聯圖]。

  4. 找出您要匯入 SQL Server 資料的 Access 資料庫。

    請確定您有必要的權限,能將資料新增到 Access 資料庫。如果您不想將資料儲存至任何現有資料庫,請依序按一下 [檔案] 索引標籤,然後在 [新增] 索引標籤上按一下 [空白資料庫] 來建立空白資料庫。

  5. 若 Access 資料庫中有任何資料表,請加以檢閱。

    匯入作業會建立一個與 SQL Server 物件同名的資料表。如果該名稱已在使用中,Access 會在新資料表名稱後附加 "1",例如 Contacts1 (而如果 Contacts1 已在使用中,則 Access 會建立 Contacts2,依此類推)。

    附註: Access 不會在匯入作業期間覆寫資料庫中的資料表,而您也無法將 SQL Server 資料附加到現有資料表。

匯入資料

  1. 開啟目的資料庫。

    在 [外部資料] 索引標籤上,按一下 [匯入與連結] 群組中的 [ODBC 資料庫]。

  2. 按一下 [匯入來源資料至目前資料庫的新資料表],然後按一下 [確定]。

  3. 在 [選取資料來源] 對話方塊中,如果您要使用的 .dsn 檔案已經存在,即可在清單中按一下該檔案。

    我需要建立新的 .dsn 檔案

    附註: 視您電腦上安裝的軟體版本而定,您在此程序中進行的步驟可能會稍有不同。

    1. 按一下 [新增] 來建立新的資料來源名稱 (DSN)。

      建立新資料來源精靈隨即啟動。

    2. 在精靈的驅動程式清單中,選取 [SQL Server],然後按一下 [下一步]。

    3. 輸入 .dsn 檔案名稱,或按一下 [瀏覽],以在其他位置建立檔案。

      附註: 您必須具備資料夾的寫入權限,才能儲存 .dsn 檔案。

    4. 按一下 [下一步]、檢閱摘要資訊,然後按一下 [完成] 來結束精靈。

      [建立新的資料來源至 SQL Server] 對話方塊隨即出現。

    5. 請在 [描述] 方塊中輸入資料來源的描述文字。此為選用步驟。

    6. 在 [您要連線到哪個 SQL Server] 底下的 [伺服器] 方塊中,輸入或選取您要連線的 SQL Server,然後按一下 [下一步] 以繼續。

    7. 您可能需要向 SQL Server 資料庫系統管理員索取資訊,例如是否要使用 Microsoft Windows NT 驗證或 SQL Server 驗證。按一下 [下一步] 以繼續。

    8. 如果您要連線至特定資料庫,請確定已選取 [變更預設資料庫為] 核取方塊。然後選取您要使用的資料庫,再按一下 [下一步]。

    9. 按一下 [完成]。

    10. 檢閱摘要資訊,再按一下 [測試資料來源]。

    11. 檢閱測試結果,然後按一下 [確定] 來關閉對話方塊。

      如果測試成功,請再次按一下 [確定],或按一下 [取消] 來變更您的設定。

  4. 按一下 [確定],將 [選取資料來源] 對話方塊關閉。

    Access 會顯示 [匯入物件] 對話方塊。

  5. 在 [資料表] 下方,按一下您想匯入的每一個資料表或檢視,然後按一下 [確定]。

  6. 如果畫面顯示 [選取唯一記錄識別碼] 對話方塊,表示 Access 無法判斷哪個欄位或哪些欄位可個別對應至物件的每一列。在這種情況下,只要為每一列選取不重複的欄位或欄位組合,然後再按一下 [確定] 即可。不確定的話,請洽詢 SQL Server 資料庫系統管理員。

    Access 隨即匯入資料。如果您之後打算重複此匯入作業,不妨將匯入步驟儲存為匯入規格,以便日後輕鬆重新執行相同的匯入步驟。您需在電腦上安裝 Microsoft Office Outlook,才能建立工作。

  7. 在 [取得外部資料 - ODBC 資料庫] 對話方塊中,按一下 [儲存匯入步驟] 底下的 [關閉]。Access 完成匯入作業,並在瀏覽窗格中顯示新資料表。

若您想要將匯入作業儲存為工作,以便重複使用,請繼續參閱下一小節。

頁面頂端

儲存及使用匯入設定

附註: 您必須安裝 Microsoft Office Outlook,才能建立工作。

  1. 在 [儲存取得外部資料 - ODBC 資料庫中的匯入步驟] 對話方塊底下,選取 [儲存匯入步驟] 核取方塊。畫面隨即出現一組額外控制項。

  2. 在 [另存新檔] 方塊中,輸入匯入規格的名稱。

  3. 在 [描述] 方塊中輸入描述文字。此為選用步驟。

  4. 若要定期 (如每週或每月) 執行該作業,請選取 [建立 Outlook 工作] 核取方塊。這樣便會在 Microsoft Outlook 2010 中建立工作,以便您執行該規格。

  5. 按一下 [儲存匯入]。

若尚未安裝 Outlook,Access 會在您按一下 [儲存匯入] 時顯示錯誤訊息。

附註: 如果 Outlook 2010 設定有誤,便會啟動 Microsoft Outlook 2010 啟動精靈。請依照精靈中的指示設定 Outlook。

或者,您也可以建立 Outlook 工作。如果您要定期或每隔一段時間重複執行此匯入作業,則在 Outlook 中建立工作便會相當實用。不過,即使您沒有建立工作,Access 仍會儲存該規格。

建立 Outlook 工作

如果您選取了 [建立 Outlook 工作] 核取方塊,Access 就會啟動 Office Outlook 2010,並顯示新的工作。請依照以下步驟來設定工作:

附註: 若尚未安裝 Outlook,Access 會顯示錯誤訊息。如果 Outlook 設定有誤,便會啟動 Outlook 設定精靈。請依照精靈中的指示來設定 Outlook。

  1. 檢閱及修改工作設定,例如 [開始日]、[到期日] 及 [提醒]。

    若要將匯入工作設為週期性事件,請按一下 [循環],然後填入適當的資訊。

  2. 按一下 [儲存並關閉]。

執行儲存的工作

  1. 在 Outlook 瀏覽窗格中,按一下 [工作],然後按兩下所要執行的工作。

  2. 在 [工作] 索引標籤上,按一下 [Microsoft Access] 群組中的 [執行匯入]。

  3. 切換回 Access 視窗,然後按 F5 重新整理瀏覽窗格。

  4. 按兩下匯入資料表,以在資料表檢視中開啟。

  5. 請確定所有的欄位和記錄都已匯入,且沒有發生任何錯誤。

  6. 以滑鼠右鍵按一下瀏覽窗格中的匯入資料表,然後按一下捷徑功能表上的 [設計檢視]。檢閱欄位資料類型和其他欄位屬性。

頁面頂端

連結 SQL Server 資料

由於資料儲存在資料表中,當您連結至 SQL Server 資料庫中的資料表或檢視時,Access 會建立可反映來源物件結構和內容的新資料表 (通常稱為連結資料表)。您可以在 SQL Server 或 Access 的資料表檢視或表單檢視中變更資料。您在其中一個位置對資料所做的變更,會反映在另外一個位置中。不過,如果您想要進行結構變更 (例如移除或變更欄),您必須從 SQL Server 資料庫或是從已連線該資料庫的 Access 專案中執行。使用 Access 工作時,您無法新增、刪除或變更連結資料表中的欄位。

準備列印

  1. 針對您要連結的資料找出其所屬的 SQL Server 資料庫。請連絡資料庫系統管理員,以取得連線資訊。

  2. 找出您要連結的資料表和檢視。您可以在單一連結作業中連結至多個物件。

  3. 檢閱來源資料,並留意下列事項:

    • Access 在單一資料表中最多僅支援 255 個欄位,因此連結資料表只會包含要連結物件的前 255 個欄位。

    • 在 SQL Server 物件中唯讀的欄,在 Access 中也會是唯讀的。

    • 您無法新增、刪除或修改 Access 連結資料表的欄。

  4. 找出您要在其中建立連結資料表的 Access 資料庫。請確定您有必要的權限,能將資料新增到資料庫。如果您不想將資料儲存至任何現有資料庫,請建立一個新的空白資料庫,方法是按一下 [檔案] 索引標籤,然後再按一下 [新增] 索引標籤上的 [空白資料庫]。

  5. 檢閱 Access 資料庫中的資料表。連結至 SQL Server 資料表或檢視時,Access 會建立與來源物件同名的連結資料表。如果該名稱已在使用中,Access 會在新連結資料表名稱後附加「1」,例如 Contacts1 (如果 Contacts1 已在使用中,Access 會建立 Contacts2,依此類推)。

  6. 若要連結資料,請開啟目的資料庫。

  7. 在 [外部資料] 索引標籤上,按一下 [匯入與連結] 群組中的 [ODBC 資料庫]。

  8. 按一下 [以建立連結資料表的方式,連結至資料來源],然後按一下 [確定]。

  9. 在 [選取資料來源] 對話方塊中按一下您要使用的 .dsn 檔案,或按一下 [新增] 來建立新資料來源名稱 (DSN)。

  10. 在 [選取資料來源] 對話方塊中,如果您要使用的 .dsn 檔案已經存在,即可在清單中按一下該檔案。

    我需要建立新的 .dsn 檔案

    附註: 視您電腦上安裝的軟體版本而定,您在此程序中進行的步驟可能會稍有不同。

    1. 按一下 [新增] 來建立新的資料來源名稱 (DSN)。

      建立新資料來源精靈隨即啟動。

    2. 在精靈的驅動程式清單中,選取 [SQL Server],然後按一下 [下一步]。

    3. 輸入 .dsn 檔案名稱,或按一下 [瀏覽],以在其他位置建立檔案。

      附註: 您必須具備資料夾的寫入權限,才能儲存 .dsn 檔案。

    4. 按一下 [下一步]、檢閱摘要資訊,然後按一下 [完成] 來結束建立新資料來源精靈。

      建立新的資料來源至 SQL Server 精靈隨即啟動。

    5. 請在精靈的 [描述] 方塊中,輸入資料來源的描述文字。此為選用步驟。

    6. 在 [您要連線到哪個 SQL Server] 底下的 [伺服器] 方塊中,輸入或選取您要連線的 SQL Server 電腦,然後按一下 [下一步] 以繼續。

    7. 在這一精靈頁面中,您可能需要向 SQL Server 資料庫系統管理員索取資訊,例如是否要使用 Windows NT 驗證或 SQL Server 驗證。按一下 [下一步] 以繼續。

    8. 在下一精靈頁面中,您可能需要向 SQL Server 資料庫系統管理員索取更多資訊。如果您要連線至特定資料庫,請確定已選取 [變更預設資料庫為] 核取方塊,然後選取您要使用的 SQL Server 資料庫,再按一下 [下一步]。

    9. 按一下 [完成]。檢閱摘要資訊,然後按一下 [測試資料來源]。

    10. 檢閱測試結果,然後按一下 [確定],以關閉 [SQL Server ODBC 資料來源測試] 對話方塊。

      如果測試成功,請再次按一下 [確定] 以完成精靈,或按一下 [取消] 以回到精靈並變更您的設定。

  11. 按一下 [確定]。

    Access 會顯示 [連結資料表] 對話方塊。

  12. 在 [資料表] 底下,按一下您想連結的每一個資料表或檢視,然後按一下 [確定]。

    1. 如果畫面顯示 [選取唯一記錄識別碼] 對話方塊,表示 Access 無法判斷哪個欄位或哪些欄位可個別識別來源資料的每一列。在這種情況下,只要為每一列選取不重複的欄位或欄位組合,再按一下 [確定] 即可。不確定的話,請洽詢 SQL Server 資料庫系統管理員。

Access 完成連結作業,並在瀏覽窗格中顯示新連結資料表。

重要: 如此一來,每次您開啟連結資料表或來源物件時,即可看到當中顯示最新的資料。不過,SQL Server 物件的任何結構性變更,並不會自動反映在連結資料表中。

為連結資料表套用最新 SQL Server 物件結構來進行更新

  1. 以滑鼠右鍵按一下瀏覽窗格中的資料表,然後按一下捷徑功能表中的 [連結資料表管理員]。

  2. 選取您要更新之每個連結資料表旁邊的核取方塊,或按一下 [全選] 以選取全部的連結資料表。

  3. 按一下 [確定]。

    如果更新成功,Access 會顯示成功的訊息;若失敗,Access 也會顯示錯誤訊息通知您。

  4. 按一下 [關閉] 以關閉連結資料表管理員。

頁面頂端

Access 如何解讀 SQL Server 資料類型

由於 Access 資料類型與 SQL Server 資料類型不同,因此 Access 必須針對您匯入或連結的每個 SQL Server 資料表或檢視,判斷最合用的 Access 資料類型。例如,在匯入或連結至 Access 之後,SQL Server 欄的 [bit] 資料類型會變成 [是/否] 資料類型。在其他例子中,SQL Server 欄的 [nvarchar(255)] (或更小) 資料類型,在經過匯入或連結處理後,會變成 [文字] 資料類型,但 [nvarchar(256)] (或更大) 則會在 Access 中轉換為 [備忘] 欄位。完成匯入或連結作業後,您可以使用設計檢視開啟資料表,確認 Access 為欄位所指派的資料類型。您可以變更匯入資料表中的欄位資料類型。不過,您無法變更連結資料表的欄位資料類型;您只能在 SQL Server 資料庫本身、或已連至該資料庫的 Access 專案中變更。

下表列出主要的 SQL Server 資料類型。第二和第三欄指出 Access 對每一種類型的轉譯方式。

SQL Server 資料類型

Access 資料類型

Access 欄位大小

bigint

文字

255

binary ( 欄位大小 )

二進位

與 SQL Server 欄位大小相同

bit

是/否

char ( 欄位大小 ),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

char ( 欄位大小 ),其中欄位大小大於 255

備忘

datetime

日期/時間

decimal ( 整數位數 小數位數 )

數值

十進位 (Access 整數位數小數位數屬性與 SQL Server 的整數位數與小數位數相符)。

float

數值

雙精準數

image

OLE 物件

int

數值

長整數

money

貨幣

nchar ( 欄位大小 ),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

nchar ( 欄位大小 ),其中欄位大小大於 255

備忘

ntext

備忘

numeric ( 整數位數 小數位數 )

數值

十進位 (Access 整數位數小數位數屬性與 SQL Server 的整數位數與小數位數相符)。

nvarchar ( 欄位大小 ),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

nvarchar ( 欄位大小 ),其中欄位大小大於 255

備忘

nvarchar(MAX)

備忘

real

數值

單精準數

smalldatetime

日期/時間

smallint

數值

整數

smallmoney

貨幣

sql_variant

文字

255

text

備忘

timestamp

二進位

8

tinyint

數值

位元組

uniqueidentifier

數值

複寫識別碼

varbinary

二進位

與 SQL Server 欄位大小相同

varbinary(MAX)

OLE 物件

varchar ( 欄位大小 ),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

varchar ( 欄位大小),其中欄位大小大於 255

備忘

varchar(MAX)

備忘

xml

備忘

頁面頂端

如果您的部門或工作群組使用 Microsoft SQL Server 來儲存資料,有時您可能會需要在 Microsoft Office Access 2007 中處理一些 SQL Server 資料。

如果您不熟悉 SQL Server,並想要深入了解,請瀏覽 Microsoft SQL Server 首頁。請參閱本文<另請參閱>一節中的連結。

您可以透過兩種方式將資料從 SQL Server 物件 (資料表或檢視) 加入 Office Access 2007:匯入或連結。匯入資料時,您會將資料複製到您的 Access 資料庫中。您之後在 Access 中對資料進行任何變更,也不會反映在 SQL Server 資料庫。同樣地,SQL Server 資料表或檢視之後如有任何變更,也不會反映在 Access 中。反之,如果您連結至 SQL Server 資料,資料仍會留存在 SQL Server 電腦上,而 Access 則是維持與該筆資料的連線。若您之後在 Access 中對資料進行任何變更,會如實反映在 SQL Server 資料中;而您在 SQL Server 資料庫中進行的任何變更,也會反映在Access 的連結資料表中。

本文將說明將 SQL Server 資料匯入及連結至 Access 2007 的步驟。

匯入 SQL Server 資料

匯入 SQL Server 資料時,系統會在 Access 資料庫中建立資料複本。匯入作業期間,由您指定要複製的資料表或檢視。

匯入作業會在 Access 中建立資料表,然後將 SQL Server 資料庫的資料複製到該 Access 資料表中。如需資料表和資料庫結構化方式的詳細資訊連結,請參閱<另請參閱>一節。

匯入作業結束時,您可以選擇將匯入作業的詳細資料儲存為規格。匯入規格可協助您日後重複同樣的匯入作業,而不必每次都從頭逐步進行匯入精靈的步驟。

將 SQL Server 資料表匯入 Access 的常見情況

一般而言,將 SQL Server 資料匯入至 Access 資料庫的原因如下:

  • 您不再需要將資料存放於 SQL Server 資料庫中,因此要永久將 SQL Server 資料搬至 Access 資料庫。將資料匯入 Access 後,您就可以將資料從 SQL Server 資料庫中刪除。

  • 您的部門或工作群組使用 Access,但為了某筆必須合併至其中一個 Access 資料庫的資料,您偶爾會指向 SQL Server 資料庫。

以下步驟說明如何將 SQL Server 資料匯入至 Access 資料庫。

準備匯入作業

  1. 針對您要複製的資料,找到其所屬的 SQL Server 資料庫。請連絡資料庫系統管理員,以取得連線資訊。

  2. 找出您要複製到 Access 資料庫的資料表或檢視。您可以在單一匯入作業中一次匯入多個物件。

  3. 檢閱來源資料,並留意下列事項:

    • Access 在單一資料表中最多只支援 255 個欄位,因此 Access 只會匯入前 255 個欄。

    • Access 資料庫的大小上限為 2 GB (扣除系統物件所需的空間後)。如果 SQL Server 資料庫包含多個大型資料表,您可能無法將所有資料表匯入 .accdb 檔案。在此情況下,建議您考慮改為將資料連結至 Access 資料庫。

    • Access 不會在匯入作業結束時自動建立相關資料表之間的關聯。您必須使用 [資料庫關聯圖] 索引標籤上的選項,手動建立各種新資料表與現有資料表之間的關聯。顯示 [資料庫關聯圖] 索引標籤的步驟如下:
      請在 [資料庫工具] 索引標籤上,按一下 [資料庫關聯圖] 群組中的 [顯示/隱藏]。 按鈕影像

  4. 找出您要匯入 SQL Server 資料的 Access 資料庫。

    請確定您有必要的權限,能將資料新增到 Access 資料庫。如果您不想將資料儲存至任何現有資料庫,請依序按一下 Microsoft Office 按鈕 Office 按鈕影像 ,然後按一下 [新增]。

  5. 若 Access 資料庫中有任何資料表,請加以檢閱。

    匯入作業會建立一個與 SQL Server 物件同名的資料表。如果該名稱已在使用中,Access 會在新資料表名稱後附加 "1",例如 Contacts1 (而如果 Contacts1 已在使用中,則 Access 會建立 Contacts2,依此類推)。

    附註: Access 不會在匯入作業期間覆寫資料庫中的資料表,而您也無法將 SQL Server 資料附加到現有資料表。

匯入資料

  1. 開啟目的資料庫。

    在 [外部資料] 索引標籤的 [匯入] 群組中,按一下 [更多]。

  2. 按一下 [ODBC 資料庫] 按鈕影像

  3. 按一下 [匯入來源資料至目前資料庫的新資料表],然後按一下 [確定]。

  4. 在 [選取資料來源] 對話方塊中,如果您要使用的 .dsn 檔案已經存在,即可在清單中按一下該檔案。

    我需要建立新的 .dsn 檔案

    附註: 視您電腦上安裝的軟體版本而定,您在此程序中進行的步驟可能會稍有不同。

    1. 按一下 [新增] 來建立新的資料來源名稱 (DSN)。
      建立新資料來源精靈隨即啟動。

    2. 在精靈的驅動程式清單中,選取 [SQL Server],然後按一下 [下一步]。

    3. 輸入 .dsn 檔案名稱,或按一下 [瀏覽],以在其他位置建立檔案。

      附註: 您必須具備資料夾的寫入權限,才能儲存 .dsn 檔案。

    4. 按一下 [下一步]、檢閱摘要資訊,然後按一下 [完成] 來結束精靈。
      建立新的資料來源至 SQL Server 精靈隨即啟動。

    5. 請在精靈的 [描述] 方塊中,輸入資料來源的描述文字。此為選用步驟。

    6. 在 [您要連線到哪個 SQL Server] 底下的 [伺服器] 方塊中,輸入或選取您要連線的 SQL Server,然後按一下 [下一步] 以繼續。

    7. 在這一精靈頁面中,您可能需要向 SQL Server 資料庫系統管理員索取資訊,例如是否要使用 Microsoft Windows NT 驗證或 SQL Server 驗證。按一下 [下一步] 以繼續。

    8. 在下一精靈頁面中,您可能需要先向 SQL Server 資料庫系統管理員索取更多資訊。如果您要連線至特定資料庫,請確定已選取 [變更預設資料庫為] 核取方塊。然後選取您要使用的資料庫,再按一下 [下一步]。

    9. 按一下 [完成]。檢閱摘要資訊,然後按一下 [測試資料來源]。

    10. 檢閱測試結果,然後按一下 [確定],以關閉 [SQL Server ODBC 資料來源測試] 對話方塊。

      如果測試成功,請再次按一下 [確定] 以完成精靈,或按一下 [取消] 以回到精靈並變更您的設定。

  5. 按一下 [確定],將 [選取資料來源] 對話方塊關閉。

    Access 會顯示 [匯入物件] 對話方塊。

  6. 在 [資料表] 下方,按一下您想匯入的每一個資料表或檢視,然後按一下 [確定]。

  7. 如果畫面顯示 [選取唯一記錄識別碼] 對話方塊,表示 Access 無法判斷哪個欄位或哪些欄位可個別對應至物件的每一列。在這種情況下,只要為每一列選取不重複的欄位或欄位組合,然後再按一下 [確定] 即可。不確定的話,請洽詢 SQL Server 資料庫系統管理員。

Access 隨即匯入資料。如果您之後打算重複此匯入作業,不妨將匯入步驟儲存為匯入規格,以便日後輕鬆重新執行相同的匯入步驟。若要完成這項工作,請繼續參閱本文下一小節。如果您不想儲存匯入規格的詳細資料,請在 [取得外部資料 - ODBC 資料庫] 對話方塊中,按一下 [儲存匯入步驟] 底下的 [關閉]。Access 完成匯入作業,並在瀏覽窗格中顯示新資料表。

將匯入步驟儲存為規格

  1. 在 [取得外部資料 - ODBC 資料庫] 對話方塊中的 [儲存匯入步驟] 底下,選取 [儲存匯入步驟] 核取方塊。

    畫面隨即出現一組額外控制項。

  2. 在 [另存新檔] 方塊中,輸入匯入規格的名稱。

  3. 在 [描述] 方塊中輸入描述文字。此為選用步驟。

  4. 如果您想要定期 (如每週或每月) 執行該作業,請選取 [建立 Outlook 工作] 核取方塊。這樣便會在 Microsoft Office Outlook 2007 中建立工作,讓您執行該規格。

  5. 按一下 [儲存匯入]。

設定 Outlook 工作

如果您在前一個程序選取了 [建立 Outlook 工作] 核取方塊,Access 就會啟動 Office Outlook 2007 並顯示新的工作。請依照以下步驟來設定工作。

附註: 若尚未安裝 Outlook,Access 會顯示錯誤訊息。如果 Outlook 設定有誤,便會啟動 Outlook 設定精靈。請依照精靈中的指示來設定 Outlook。

  1. 在 Outlook 工作視窗中檢閱及修改工作設定,例如 [到期日] 及 [提醒]。

    若要建立週期性工作,請按一下 [週期性],並填入適當資訊。

    此圖顯示含有部分一般設定的工作排程器。

    Outlook 工作排程器

    如需排程 Outlook 工作的相關資訊,請參閱排程匯入或匯出作業一文。

  2. 當您在 Outlook 中完成工作設定時,請在 [工作] 索引標籤中,按一下 [動作] 群組的 [儲存並關閉]。

執行儲存的工作

  1. 在 Outlook 瀏覽窗格中,按一下 [工作],然後按兩下所要執行的工作。

  2. 在 [工作] 索引標籤上,按一下 [Microsoft Office Access] 群組中的 [執行匯入] 按鈕影像

  3. 切換回 Access 視窗,然後按 F5 重新整理瀏覽窗格。

  4. 按兩下匯入資料表,以在資料表檢視中開啟。

  5. 請確定所有的欄位和記錄都已匯入,且沒有發生任何錯誤。

  6. 以滑鼠右鍵按一下瀏覽窗格中的匯入資料表,然後按一下捷徑功能表上的 [設計檢視]。檢閱欄位資料類型和其他欄位屬性。

頁面頂端

連結 SQL Server 資料

連結可讓您在不必匯入資訊的情況下連線至資料,以便檢視及編輯 SQL Server 資料庫與 Access 資料庫中的最新資料,無需在 Access 中建立和維護資料複本。如果您不想將 SQL Server 資料複製到 Access 資料庫中,但仍想要根據該筆資料執行查詢及產生報表,則您應連結至該筆資料,而非將其匯入。

當您連結至 SQL Server 資料庫中的資料表或檢視時,Access 會建立可反映來源物件結構和內容的新資料表 (通常稱為連結資料表)。您可以在 SQL Server 或 Access 的資料表檢視或表單檢視中變更資料。您在其中一個地方對資料所做的變更,會反映在另外一個地方中。不過,如果您想要進行結構變更 (例如移除或變更欄),您必須從 SQL Server 資料庫或是從已連線該資料庫的 Access 專案中變更。使用 Access 工作時,您無法新增、刪除或修改連結資料表中的欄位。

如果 SQL Server 資料庫包含大量資料,您應選擇連結而非匯入,因為 Access 資料庫的大小上限為 2GB (扣除系統物件所需的空間後)。匯入許多大型資料表或檢視可能會導致您超過大小上限,然而,連結資料並不會為 Access 資料庫增加太多大小。

連結至 SQL Server 資料的常見案例

一般而言,從 Access 資料庫連結 SQL Server 資料表或檢視的原因如下:

  • 您的部門或工作群組使用 Access 執行報表與查詢功能,並使用 SQL Server 儲存資料。而個別小組可以建立 SQL Server 資料表和檢視來將資料集中儲存,但有時這筆資料必須匯入桌面程式,以進行彙總及產生報表。此時,連結是理想的選擇,因為此做法不但可讓 SQL Server 資料庫和 Access 資料庫的使用者新增及更新資料,還可隨時檢視及處理最新資料。

  • 您是 Access 使用者,且最近才開始使用 SQL Server。您將數個資料庫移轉到了 SQL Server,而這些資料庫中大部分的資料表都是連結資料表。從現在起您不打算再建立 Access 資料表,而要改為在 SQL Server 中建立資料表和檢視,再從 Access 資料庫連結這些物件。

  • 您想要繼續將資料儲存在 SQL Server,但也想使用 Access 中的最新資料來執行查詢,以及列印您在 Access 中設計的報表。

準備連結至 SQL Server 資料表

  1. 針對您要連結的資料找出其所屬的 SQL Server 資料庫。請連絡資料庫系統管理員,以取得連線資訊。

  2. 找出您要連結的資料表和檢視。您可以在單一連結作業中連結至多個物件。

  3. 檢閱來源資料,並留意下列事項:

    • Access 在單一資料表中最多僅支援 255 個欄位,因此連結資料表只會包含要連結物件的前 255 個欄位。

    • 在 SQL Server 物件中唯讀的欄,在 Access 中也會是唯讀的。

    • 您無法新增、刪除或修改 Access 連結資料表的欄。

  4. 找出您要在其中建立連結資料表的 Access 資料庫。請確定您有必要的權限,能將資料新增到資料庫。如果您不想將資料儲存至任何現有資料庫,請使用下列命令建立一個新的空白資料庫:

    按一下 Microsoft Office 按鈕 Office 按鈕影像 ,然後按一下 [新增]。

  5. 檢閱 Access 資料庫中的資料表。連結至 SQL Server 資料表或檢視時,Access 會建立與來源物件同名的連結資料表。如果該名稱已在使用中,Access 會在新連結資料表名稱後附加「1」,例如 Contacts1 (如果 Contacts1 已在使用中,Access 會建立 Contacts2,依此類推)。

連結至資料

  1. 開啟目的資料庫。

  2. 在 [外部資料] 索引標籤的 [匯入] 群組中,按一下 [更多]。

  3. 按一下 [ODBC 資料庫]。

  4. 按一下 [以建立連結資料表的方式,連結至資料來源],然後按一下 [確定]。

  5. 在 [選取資料來源] 對話方塊中按一下您要使用的 .dsn 檔案,或按一下 [新增] 來建立新資料來源名稱 (DSN)。

  6. 在 [選取資料來源] 對話方塊中,如果您要使用的 .dsn 檔案已經存在,即可在清單中按一下該檔案。

    我需要建立新的 .dsn 檔案

    附註: 視您電腦上安裝的軟體版本而定,您在此程序中進行的步驟可能會稍有不同。

    1. 按一下 [新增] 來建立新的資料來源名稱 (DSN)。
      建立新資料來源精靈隨即啟動。

    2. 在精靈的驅動程式清單中,選取 [SQL Server],然後按一下 [下一步]。

    3. 輸入 .dsn 檔案名稱,或按一下 [瀏覽],以在其他位置建立檔案。

      附註: 您必須具備資料夾的寫入權限,才能儲存 .dsn 檔案。

    4. 按一下 [下一步]、檢閱摘要資訊,然後按一下 [完成] 來結束建立新資料來源精靈。
      建立新的資料來源至 SQL Server 精靈隨即啟動。

    5. 請在精靈的 [描述] 方塊中,輸入資料來源的描述文字。此為選用步驟。

    6. 在 [您要連線到哪個 SQL Server] 底下的 [伺服器] 方塊中,輸入或選取您要連線的 SQL Server 電腦,然後按一下 [下一步] 以繼續。

    7. 在這一精靈頁面中,您可能需要向 SQL Server 資料庫系統管理員索取資訊,例如是否要使用 Windows NT 驗證或 SQL Server 驗證。按一下 [下一步] 以繼續。

    8. 在下一精靈頁面中,您可能需要向 SQL Server 資料庫系統管理員索取更多資訊。如果您要連線至特定資料庫,請確定已選取 [變更預設資料庫為] 核取方塊,然後選取您要使用的 SQL Server 資料庫,再按一下 [下一步]。

    9. 按一下 [完成]。檢閱摘要資訊,然後按一下 [測試資料來源]。

    10. 檢閱測試結果,然後按一下 [確定],以關閉 [SQL Server ODBC 資料來源測試] 對話方塊。

      如果測試成功,請再次按一下 [確定] 以完成精靈,或按一下 [取消] 以回到精靈並變更您的設定。

  7. 按一下 [確定]。
    Access 會顯示 [連結資料表] 對話方塊。

  8. 在 [資料表] 底下,按一下您想連結的每一個資料表或檢視,然後按一下 [確定]。

  9. 如果畫面顯示 [選取唯一記錄識別碼] 對話方塊,表示 Access 無法判斷哪個欄位或哪些欄位可個別識別來源資料的每一列。在這種情況下,只要為每一列選取不重複的欄位或欄位組合,再按一下 [確定] 即可。不確定的話,請洽詢 SQL Server 資料庫系統管理員。

Access 完成連結作業,並在瀏覽窗格中顯示新連結資料表。

重要: 如此一來,每次您開啟連結資料表或來源物件時,即可看到當中顯示最新的資料。不過,SQL Server 物件的任何結構性變更,並不會自動反映在連結資料表中。


為連結資料表套用最新 SQL Server 物件結構來進行更新:

  1. 以滑鼠右鍵按一下瀏覽窗格中的資料表,然後按一下捷徑功能表中的 [連結資料表管理員]。

  2. 選取您要更新之每個連結資料表旁邊的核取方塊,或按一下 [全選] 以選取全部的連結資料表。

  3. 按一下 [確定]。

    如果更新成功,Access 會顯示成功的訊息;若失敗,Access 也會顯示錯誤訊息通知您。

  4. 按一下 [關閉] 以關閉連結資料表管理員。

頁面頂端

了解 Access 如何轉譯 SQL Server 資料類型

由於 Access 資料類型與 SQL Server 資料類型不同,因此 Access 必須針對您匯入或連結的每個 SQL Server 資料表或檢視,判斷最合用的 Access 資料類型。例如,在匯入或連結至 Access 之後,SQL Server 欄的 [bit] 資料類型會變成 [是/否] 資料類型。在其他例子中,SQL Server 欄的 [nvarchar(255)] (或更小) 資料類型,在匯入或連結至 Access 後,會變成 [文字] 資料類型,但 [nvarchar(256)] (或更大) 則會在 Access 中轉換為 [備忘] 欄位。完成匯入或連結作業後,建議您使用設計檢視開啟資料表,確認 Access 為欄位所指派的資料類型。您可以變更匯入資料表中的欄位資料類型;不過,您無法變更連結資料表的欄位資料類型,您只能在 SQL Server 資料庫、或已連至該資料庫的 Access 專案中變更。

下表列出主要的 SQL Server 資料類型。第二和第三欄指出 Access 對每一種類型的轉譯方式。

SQL Server 資料類型

Access 資料類型

Access 欄位大小

bigint

文字

255

binary ( 欄位大小 )

二進位

與 SQL Server 欄位大小相同

bit

是/否

char ( 欄位大小 ),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

char ( 欄位大小 ),其中欄位大小大於 255

備忘

datetime

日期/時間

decimal ( 整數位數 小數位數 )

數值

十進位 (Access 整數位數小數位數屬性與 SQL Server 的整數位數與小數位數相符)。

float

數值

雙精準數

image

OLE 物件

int

數值

長整數

money

貨幣

nchar ( 欄位大小 ),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

nchar ( 欄位大小 ),其中欄位大小大於 255

備忘

ntext

備忘

numeric ( 整數位數 小數位數 )

數值

十進位 (Access 整數位數小數位數屬性與 SQL Server 的整數位數與小數位數相符)。

nvarchar ( 欄位大小 ),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

nvarchar ( 欄位大小 ),其中欄位大小大於 255

備忘

nvarchar (MAX)

備忘

real

數值

單精準數

smalldatetime

日期/時間

smallint

數值

整數

smallmoney

貨幣

sql_variant

文字

255

text

備忘

timestamp

二進位

8

tinyint

數值

位元組

uniqueidentifier

數值

複寫識別碼

varbinary

二進位

與 SQL Server 欄位大小相同

varbinary (MAX)

OLE 物件

varchar ( 欄位大小 ),其中欄位大小小於或等於 255

文字

與 SQL Server 欄位大小相同

varchar ( 欄位大小),其中欄位大小大於 255

備忘

varchar (MAX)

備忘

xml

備忘

頁面頂端

擴展您的技能
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×