如何使用系統、 使用者及檔案資料來源名稱 (DSN) 在 Excel 2000 或 Excel 2002 中

文章翻譯 文章翻譯
文章編號: 213772 - 檢視此文章適用的產品。
本文章的有 Microsoft Office 97] 版本請參閱 159557
全部展開 | 全部摺疊

在此頁中

結論

Microsoft Office 包含開放式資料庫連接 (ODBC) 驅動程式,您可以使用從其他程式存取資料。本文將告訴您,不同類型的資料來源名稱 (DSN),您可以安裝並在特別是在 Microsoft Excel 中的 Microsoft Office 程式中使用。

其他相關資訊

您在安裝 Microsoft Office 時 ODBC 圖示代表 ODBC 管理員安裝在 [控制台] 中。ODBC 管理員可讓您安裝和設定 ODBC 資料來源。在 [ODBC 管理員] 中,您可以安裝和設定下列三種類型的名稱 (DSN):
  • 使用者資料來源名稱
  • 系統資料來源名稱
  • 檔案資料來源名稱

使用者資料來源名稱

使用者資料來源名稱是使用者特定的資料來源。使用者資料來源名稱儲存在本機,但只有將會建立它的使用者才能使用。Microsoft Query 不會使用使用者名稱 (DSN)。如果您使用 Microsoft Jet]、 [ODBC,] 或 [結構化查詢語言 (SQL)] 命令,並略過 Microsoft Query,使用者名稱 (DSN) 都是必要的。使用者名稱 (DSN) 會儲存在 Windows 登錄下列機碼下:
HKEY_CURRENT_USER\Software\Odbc\Odbc.ini\Odbc 資料來源

系統資料來源名稱

與不同使用者 DSN 的是系統 DSN 不是特定使用者。一個系統 DSN 會在本機儲存,並不專門用來為特定使用者。任何登入電腦上具有存取資料來源的權限的使用者可以使用系統 DSN。某些程式如 Microsoft SQL Server] 或 [Microsoft 網際網路資訊伺服器 (IIS)],需要系統 DSN。此資料來源名稱必須在程式所在的伺服器上建立。系統名稱 (DSN) 都儲存在 [Windows 登錄下列機碼下的:
HKEY_LOCAL_MACHINE\Software\Odbc\Odbc.ini\Odbc 資料來源

檔案資料來源名稱

[檔案 DSN 會在本機建立,並且可以與其他使用者共用。檔案資料來源名稱是檔案架構意.dsn 檔包含連接到資料來源所需的所有資訊。請注意您必須安裝 ODBC 驅動程式在本機上要使用 [檔案 DSN]。Microsoft Query 會使用檔案名稱 (DSN),但 Microsoft Jet 和 ODBC 不要使用檔案名稱 (DSN)。

檔案名稱 (DSN) 儲存在程式 Files\Common Files\Odbc\Data 來源中預設資料夾。檔案名稱 (DSN) 不會儲存在 Windows 登錄中。.dsn 檔是您可以在這類像 Microsoft 「 記事本 」 的任何文字編輯器中檢視的文字檔。

注意: 當您連接至現有資料來源使用 Microsoft Query 只在可用檔案 DSN,儲存在該電腦會顯示。Microsoft Query 不會顯示使用者] 或 [系統 DSN。但是,您可以建立檔案資料來源名稱,指向 [系統 DSN。

若要建立一個檔案,指向 [系統 DSN 資料來源名稱,請依照下列步驟執行:
  1. 例如 Microsoft 記事本的文字編輯器中輸入下列兩個的各行,在新文件中
    [ODBC] 資料來源名稱 = MySysDSN
    其中 MySysDSN 」 是安裝在 [控制台] 中的 ODBC 工具中的現有系統 DSN 的名稱。
  2. 在 [檔案] 功能表上按一下 [儲存 輸入包含副檔名為.dsn 的 [檔案 DSN 的名稱 ;,例如下列是有效的名稱:
    DBase4.dsn"
    包含以確認.dsn 副檔名加入正確的引號。
您也可以與其他使用者共用檔案資料來源名稱。如果要執行這項操作,共用.dsn 檔儲存使用下列步驟執行資料夾:
  1. 用滑鼠右鍵按一下 [開始],然後再按一下 [檔案總管]
  2. 開啟包含.dsn 檔的資料夾。根據預設值,這是程式 Files\Common Files\Odbc\Data 來源] 資料夾。
  3. 在資料夾上按一下滑鼠右鍵,然後按一下 [共用]。在 [共用] 索引標籤上 按一下 [共用],並輸入要用於 共用名稱] 方塊中的資料夾名稱然後按一下 [確定]
注意: 每個使用者必須為檔案資料來源名稱,若要正常運作電腦上安裝適當的 ODBC 驅動程式 ([檔案 DSN 是指驅動程式)。

外部資料傳回至 Microsoft Excel 的範例巨集


Microsoft 僅,為了說明提供程式設計範例,不提供任何明示或默示的保證,包括但不是限於適售性以及適合某特定用途之默示擔保責任。本文假設您已熟悉我們所示範的程式設計語言,以及用來建立和偵錯程序的工具。Microsoft 技術支援工程師可以協助解釋特定程序的功能,但它們不會修改這些範例以提供附加功能或建構程序,以符合您的特定需求。
如果您有限制程式設計經驗,您可以連絡 Microsoft 認證合作夥伴或 Microsoft 諮詢服務。如需詳細資訊請造訪下列 Microsoft] 網站:

Microsoft 認證合作夥伴-https://partner.microsoft.com/global/30000104

Microsoft 摘要報告服務-http://support.microsoft.com/gp/advisoryservice

如需有關可用的支援選項,以及有關如何連絡 Microsoft 的詳細資訊,請造訪下列 Microsoft 網站: http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

下列應用程式的巨集的 Microsoft Excel Visual Basic 可以使用現有的使用者或系統資料來源名稱,來從資料庫擷取資料,並將資料儲存在工作表中。這個範例會使用此巨集的資料來源名稱是 MyDSN。它會參考 Microsoft Access 範例資料庫 Northwind.mdb 程式 Files\Microsoft Office\Office\Samples 資料夾中的。您可以使用 MyDSN 為使用者或系統資料來源名稱,但您不能當作檔案 DSN 中使用。
Sub Get_Data()
    'Define SQL query string to get the CategoryName field from
    'the Category table.
    sqlstring = "SELECT CategoryName FROM Categories"
    'Define connection string and reference File DSN.
    connstring = "ODBC;DSN=MyDSN"
    'Create QueryTable in worksheet beginning with cell C1.
    With ActiveSheet.QueryTables.Add(Connection:=connstring, _
        Destination:=Range("C1"), Sql:=sqlstring)
        .Refresh
    End With
End Sub
				

?考

如需有關如何擷取資料的詳細資訊,按一下 [說明] 功能表上的 [Microsoft Excel 說明],並在 「 Office 小幫手 」 或 「 解答精靈 」 中輸入 方式擷取從外部資料庫的資料 然後按一下 [搜尋] 以檢視主題。

屬性

文章編號: 213772 - 上次校閱: 2007年1月24日 - 版次: 3.6
這篇文章中的資訊適用於:
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 2002 Standard Edition
關鍵字:?
kbmt kbquery kbdtacode kbhowto kbprogramming KB213772 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:213772
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com