資料來源:管理連接 (ODBC)
本主題適用於 MFC ODBC 類別。
本主題將說明:
連線資料來源表示建立與 DBMS 的通訊以存取資料。 當您透過 ODBC 驅動程式從應用程式連線到資料來源時,驅動程式會在本機或透過網路為您建立連線。
您可以連線到您擁有 ODBC 驅動程式的任何資料來源。 您應用程式的使用者也必須為其資料來源具有相同的 ODBC 驅動程式。 如需重新發佈 ODBC 驅動程式的詳細資訊,請參閱 將 ODBC 元件轉散發給您的客戶 。
設定資料來源
ODBC 管理員istrator 可用來設定資料來源。 您也可以在安裝之後使用 ODBC 管理員istrator 來新增或移除資料來源。 當您建立應用程式時,您可以將使用者導向 ODBC 管理員istrator,讓他們新增資料來源,或者您可以透過直接 ODBC 安裝呼叫,在應用程式中建置這項功能。 如需詳細資訊,請參閱 ODBC 管理員istrator 。
您可以使用 Excel 檔案做為資料來源,而且您必須設定檔案,使其註冊並出現在 [ 選取資料來源 ] 對話方塊中。
使用 Excel 檔案作為資料來源
使用 ODBC 資料來源管理員istrator 來設定檔案。
在 [ 檔案 DSN] 索引標籤上 ,按一下 [ 新增 ]。
在 [ 建立新的資料來源] 對話方塊中,選取 Excel 驅動程式,然後按 [ 下一步 ]。
按一下 [ 流覽 ],然後選取要當做日期來源使用的檔案名。
注意
您可能需要選取 下拉式功能表中的所有檔案 ,才能檢視 .xls 檔案。
按 [下一步],然後按一下 [完成]。
在 [ ODBC Microsoft Excel 安裝程式 ] 對話方塊中,選取資料庫 [版本] 和 [活頁簿]。
在多使用者環境中工作
如果多個使用者連線到資料來源,則在記錄集中運算元據時,他們可以變更資料。 同樣地,您的變更可能會影響其他使用者的記錄集。 如需詳細資訊,請參閱 記錄集:記錄集如何更新記錄 (ODBC) 和 交易 (ODBC) 。
將連線字串一般化
精靈會使用預設連接字串來建立資料來源的連線。 當您開發應用程式時,您可以使用此連線來檢視資料表和資料行。 不過,此預設連接字串可能不適合用戶透過應用程式連線至資料來源。 例如,其資料來源及其位置的路徑可能與開發應用程式時所使用的路徑不同。 在此情況下,您應該以更一般的方式重新實 作 CRecordset::GetDefault連線 成員函式,並捨棄精靈實作。 例如,使用下列其中一種方法:
使用 ODBC 管理員istrator 註冊和管理連接字串。
編輯連接字串並移除資料來源名稱。 架構提供 ODBC 做為資料來源;在執行時間,ODBC 會顯示一個對話方塊,要求資料來源名稱和任何其他必要的連接資訊。
僅提供資料來源名稱。 如有需要,ODBC 會要求使用者識別碼和密碼。 例如,在一般化之前,連接字串看起來像這樣:
CString CApp1Set::GetDefaultConnect() { return "ODBC;DSN=afx;Trusted_Connection=Yes;"; }
此連接字串會指定使用 Windows NT 整合式安全性的信任連線。 您應該避免將密碼硬式編碼或指定空白密碼,因為這樣做會造成重大的安全性弱點。 相反地,您可以提供
GetDefaultConnect
新的連接字串,讓它查詢使用者識別碼和密碼。// User must select data source and supply user ID and password: return "ODBC;"; // User ID and password required: return "ODBC;DSN=mydb;"; // Password required (myuserid must be replaced with a valid user ID): return "ODBC;DSN=mydb;UID=myuserid;"; // Hard-coded user ID and password (SECURITY WEAKNESS--AVOID): return "ODBC;DSN=mydb;UID=sa;PWD=777;";
連線至特定資料來源
若要連線到特定資料來源,您的資料來源必須已經使用 ODBC 管理員istrator 進行設定。
連線到特定資料來源
CDatabase
建構 物件。呼叫其
OpenEx
或Open
成員函式。
如需有關如何指定資料來源的詳細資訊,如果不是您使用精靈指定的資料來源,請參閱 MFC 參考 中的 CDatabase::OpenEx 或 CDatabase::Open 。
從資料來源中斷連接
您必須先關閉任何開啟的記錄集, Close
才能呼叫 的成員 CDatabase
函式。 在與 CDatabase
您要關閉之物件相關聯的記錄集中,會取消任何暫止 AddNew
或 Edit
語句,並回復所有暫止的交易。
中斷與資料來源的連線
CDatabase
呼叫物件的 Close 成員函式。除非您想要重複使用物件,否則會終結物件。
重複使用 CDatabase 物件
您可以在中斷連線物件之後重複使用 CDatabase
物件,不論您是使用它重新連線至相同的資料來源,還是連線到不同的資料來源。
重複使用 CDatabase 物件
關閉物件的原始連接。
不要終結 物件,而是再次呼叫其
OpenEx
或Open
成員函式。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應