office交流網(wǎng)--QQ交流群號(hào)及微信交流群

Access培訓(xùn)群:792054000         Excel免費(fèi)交流群群:686050929          Outlook交流群:221378704    

Word交流群:218156588             PPT交流群:324131555

微信交流群(請(qǐng)用微信掃碼)

        

如何在ACCESS中使用 ADOX 來創(chuàng)建 SQL 傳遞查詢

2007-12-12 20:52:21
andymark-Office交流網(wǎng)
原創(chuàng)
8654

概要本文向您如何在 Microsoft Visual Basic for Applications (VBA) 與 Microsoft ActiveX Data Objects (ADO) 創(chuàng)建 SQL 傳遞查詢。 更多信息

VisualBasic 中用于創(chuàng)建 SQL 傳遞查詢應(yīng)用程序可以編寫一個(gè)函數(shù)。 SQL 傳遞查詢?cè)O(shè)置由 SQL 語句和連接字符串。 直接向數(shù)據(jù)庫服務(wù)器進(jìn)行處理當(dāng)運(yùn)行查詢, 它發(fā)送命令。 此刪除 MicrosoftJet 數(shù)據(jù)庫引擎的開銷。 

與數(shù)據(jù)訪問對(duì)象 (DAO) 模型, 可以使用 SQL 傳遞查詢來您訪問外部數(shù)據(jù)時(shí)提高性能。 使用 ADO, 您可使用 Microsoft OLE DB Provider for SQL Server 來直接訪問 SQLServer 沒有開銷的 MicrosoftJet 或 ODBC。 您可還使用 Microsoft OLE DB Provider for ODBC 來訪問任何 ODBC 數(shù)據(jù)源中數(shù)據(jù)。 

雖然您不再有來創(chuàng)建 SQL 傳遞查詢來提高性能, MicrosoftJet 數(shù)據(jù)庫中可以通過使用 ADOX 和 JetProvider 仍完成。 以下代碼顯示您如何創(chuàng)建 SQL 傳遞查詢。 

備注 : 本文中: 示例代碼使用 ADO 和 ActiveX 數(shù)據(jù)對(duì)象擴(kuò)展用于數(shù)據(jù)定義語言和安全 (ADOX)。 對(duì)于此代碼以正確, 運(yùn)行必須單擊 工具 菜單在 VisualBasic 編輯器中 引用 并確保以下兩個(gè)引用都選中: MicrosoftActiveX 數(shù)據(jù)對(duì)象 2.1 庫
Microsoft ADO 2.6 分機(jī)對(duì)于 DDL 和安全 
Microsoft 提供編程示例僅, 供圖示不附帶任何明示或暗示。 這包括, 但不僅限于, 適銷性或用于特定目的適用性的暗示保證。 本文假定您已熟悉與正在演示編程語言以及工具來調(diào)試過程來創(chuàng)建和使用。 Microsoft 支持工程師可以幫助解釋功能的特定過程, 但它們將會(huì)修改這些示例以提供添加功能或構(gòu)建過程以滿足特定要求。

 要在代碼, 創(chuàng)建 SQL 傳遞查詢請(qǐng)按照下列步驟

 Function CreateSPT(SPTQueryName As String, strSQL As String)

     Dim cat As ADOX.Catalog

     Dim cmd As ADODB.Command

     Set cat = New ADOX.Catalog

     Set cmd = New ADODB.Command

      cat.ActiveConnection = CurrentProject.Connection

      Set cmd.ActiveConnection = cat.ActiveConnection

      cmd.CommandText = strSQL

      cmd.Properties("Jet OLEDB:ODBC Pass-Through Statement") = True 'Modify the following connection string to reference an existing DSN for  'the sample SQL Server PUBS database.

      cmd.Properties _ ("Jet OLEDBass Through Query Connect String") = _ "ODBC;DSN=myDSN;database=pubs;UID=saWD=;"

      cat.Procedures.Append SPTQueryName, cmd

      Set cat = Nothing Set cmd = Nothing

 End Function

'要測試此函數(shù), 在立即窗口, 鍵入以下行 然后按 ENTER 鍵: 

 ?CreateSPT("MySptQuery", "Select * from Authors")


 原文:http://support.microsoft.com/kb/304323/zh-cn


(相關(guān)查詢-相關(guān)文章技巧鏈接):
MDB鏈接SQLSERVER導(dǎo)致寫入沖突

分享
文章分類
聯(lián)系我們
聯(lián)系人: 王先生
Email: 18449932@qq.com
QQ: 18449932
微博: officecn01
移動(dòng)訪問