A. sql語句放在vba里需要什麼框架
VBA里使用SQL語句,不僅要需要遵循SQL的語法規則。在VBA中構造不光要遵循SQL的語法規則,還必須要遵循VBA的語法規則。
於是就會多出來好些如連接符(&)、雙引號(")等符號,很多初學者就是被這些符號搞暈了。下面就簡單講一下如何通過拆分法來理解VBA中動態SQL語句的構造。
在查詢的時候雖然我們可以將查詢條件綁定到窗體控制項,如下面的示例:
Select
* FROM 訂單表 Where客戶名稱
=Forms!客戶查詢窗體!客戶名稱輸入框但這樣只能適用於比較簡單的查詢,隨著條件復雜度的增加,SQL語句的構造難度也會直線上升,更重要的是這樣
的SQL語句很難理解,就算最終做出來了,一旦過了一段時間需要修改的話,就非常麻煩。
於是在VBA中使用變數構造動態的
SQL語句就成了一種理想的選擇。我們來看一個例子,比如我們要通過在窗體上的三個文本框(txt客戶名稱、txt開始日期、txt結束日期)內輸入相應
的條件值,來構造一個查詢訂單表中指定客戶在某個時間段內銷售記錄的SQL語句,在VBA中的代碼如下:
strSQL="
Select * FROM 訂單表 Where 客戶名稱='www.gzlij.com" & Me.txt客戶名稱 & "'
AND 銷售日期 Between #" & Me.txt開始日期 & "# And #" & Me.txt結束日期
& "#"
上面的的語句該如何理解呢?這里通過替換法來進行拆分,我們先假設文本框的值分別是:
txt開始日期=2010-5-1
txt結束日期=2010-5-31
txt客戶名稱=東南實業
根據上面的條件,我們需要得到的SQL語句應該是:
Select * FROM 訂單表 Where 客戶名稱="東南實業" AND 銷售日期 Between #2010-5-1# And #2010-5-31#
這里的由於要在VBA中構造,而雙引號(")是VBA中的字元串界定符,所以我們需要把它改成單引號(')來符合VBA的語法規則,那麼SQL語句就成了:
Select * FROM 訂單表 Where 客戶名稱='東南實業' AND 銷售日期 Between #2010-5-1# And #2010-5-31#
(當然我們也可以根據VBA的語法來用兩個雙引號,這樣VBA編譯器就會把這兩個連續的雙引號識別為一個雙引號字元,而不是字元串界定符,不過這樣相對來說更加復雜和麻煩一些,還有一些其它原因這里就不細說了。)
我們再把裡面的條件值換回變數,由於條件需要用變數代替,所以我們這里把上面的SQL語句拆分成如下的多個片段:
Select * FROM 訂單表 Where 客戶名稱='東南實業' AND 銷售日期 Between #2010-5-1# And #2010-5-31#
然後把其中的條件值換成變數,就成了:
Select * FROM 訂單表 Where 客戶名稱='Me.txt客戶名稱' AND 銷售日期 Between #Me.txt開始日期# And #Me.txt結束日期#
接下來再把其中不是變數的片段兩頭加上雙引號,使其符合VBA中的字元串語法:
"Select * FROM 訂單表 Where 客戶名稱='"Me.txt客戶名稱"' AND 銷售日期 Between #"Me.txt開始日期"# And #"Me.txt結束日期"#"
最後我們再用連接符(&)把這些拆分處理後得到的片段連接組合成一個字元串(注意,使用連接符組合多個字元串或變數時,連接符兩邊要有空格),就得到了我們需要的VBA中的動態SQL語句的寫法:
"Select
* FROM 訂單表 Where 客戶名稱='" & Me.txt客戶名稱 & "' AND 銷售日期 Between #"
& Me.txt開始日期 & "# And #" & Me.txt結束日期 & "#"
B. SQL sever是什麼
SQL Server是微軟公司開發的一個關系資料庫管理系統,以Transact_SQL作為它的資料庫查詢和編程語言。T-SQL是結構化查詢語言SQL的一種,支持ANSI SQL-92標准。
SQL Server 採用二級安全驗證、登錄驗證及資料庫用戶帳號和角色的許可驗證。SQL Server 支持兩種身份驗證模式:Windows NT身份驗證和SQL Server 身份驗證。7.0版支持多種類型的角色,"角色"概念的引入方便了許可權的管理,也使許可權的分配更加靈活。
SQL Server為公共的管理功能提供了預定義的伺服器和資料庫角色,可以很容易為某一特定用戶授予一組選擇好的許可許可權。 SQL Server可以在不同的操作平台上運行,支持多種不同類型的網路協議如TCP/IP、IPX/SPX、Apple Talk等。SQL Server在伺服器端的軟體運行平台是Windows NT、Windows9x,在客戶端可以是Windows3.x、Windows NT、Windows9x,也可以採用其它廠商開發的系統如Unix、Apple Macintosh等。
微軟的SQL Server是一項完美的客戶/伺服器系統。SQL Server需要安裝在Windows NT的平台上,而Windows NT可以支持Intel 386,Power PC,MIPS,Alpha PC和RISC等平台,它使SQL Server具備足夠的威力和功能。
這里所有的文章所採用的資料庫應用程序都是基於SQL Server之上的,採用ODBC及標準的SQL查詢,可以非常簡單的移植到任何一個支持ODBC的資料庫之上,如:Oracle,Informix,Db2和Access,在閱讀有關ASP資料庫編程技術之前,要確認你至少熟悉一種資料庫管理系統,並可以使用標準的SQL查詢語言操作資料庫。
SQL Server提供伺服器端的軟體,這部分需要安裝在NT Server上,SQL Server的用戶端則可以安裝在許多用戶端PC系統中,Windows可以讓用戶端進行資料庫的建立,維護及存取等操作,SQL Server可以最多定義32767個資料庫,每個資料庫中,可以定義20億個表格,每個表格可以有250個欄位,每個表格的數據個數並沒有限制,每一個表格可以定義250個索引,其中有一個可以是Clustered索引。
SQL Server所使用的資料庫查詢語言稱為Transact-SQL,它是SQL Server的核心,Transact-SQL強化了原有的SQL關鍵字以進行數據的存取,儲存及處理等功能,Transact-SQL擴充了流程式控制制指定,可以使你方便的編寫功能強大的存儲過程,他們存放在伺服器端,並預先編譯過,執行速度非常塊,觸發是一種特殊的存儲過程,用來確保SQL Server資料庫引用的完整性,你可以建立插入,刪除和更新觸發以控制相關的表格中對數據列的插入,刪除和更新,你還可以使用規則(Rule),預設(default)以及限制(Constraints),來協助將新的數值套用到表格中去!
SQL SERVER的特點與評價
上手容易
話分兩頭,如果您的企業至今還未購置資料庫,其中一個主要的原因可能就是認為它不好上手,那麼,從SQLServer開始吧。畢竟,大多數的中小企業日常的數據應用是建立在Windows平台上的。由於SQLServer與Windows界面風格完全一致,且有許多"向導(Wizard)"幫助,因此易於安裝和學習,有關SQLServer的資料、培訓隨處可得,並且目前國內具有MCDBA認證的工程師不在少數。
從另一個角度來講,學習SQLServer是掌握其他平台及大型數據,如Oracle,Sybase,DB/2的基礎。因為這些大型資料庫對於設備、平台、人員知識的要求往往較高,而並不是每個人都具備這樣的條件,且有機會去接觸它們。但有了SQLServer的基礎,再去學習和使用它們就容易多了。IT行業的實踐經驗充分證明了這一點。
兼容性良好
由於今天Windows操作系統佔領著主導地的位,選擇SQLServer一定會在兼容性方面取得一些優勢。另外,SQLServer2000除了具有擴展性,可靠性以外,還具有可以迅速開發新的網際網路系統的功能。尤其是它可以直接存貯XML數據,可以將搜索結果以XML格式輸出等特點,有利於構建了異構系統的互操作性,奠定了面向互聯網的企業應用和服務的基石。這些特點在.NET戰略中發揮著重要的作用。
電子商務
在使用由MicrosoftSQLServer2000關系資料庫引擎的情況下,XML數據可在關系表中進行存儲,而查詢則能以XML格式將有關結果返回。此外,XML支持還簡化了後端系統集成,並實現了跨防火牆的無縫數據傳輸。你還可以使用HypertextTransferProtocol(超文本傳輸協議,HTTP)來訪問SQLServer2000,以實現面向SQLServer2000資料庫的安全Web連接和無須額外編程的聯機分析處理(OLAP)多維數據集。
數據倉庫
MicrosoftSQLServer2000非常明顯的改進就是增加了OLAP(聯機分析處理)功能,這可以讓很多中小企業用戶也可以使用數據倉庫的一些特性進行分析。OLAP可以通過多維存儲技術對大型、復雜數據集執行快速、高級的分析工作。數據挖掘功能能夠揭示出隱藏在大量數據中的傾向及趨勢,它允許組織或機構最大
限度的從數據中獲取價值。通過對現有數據進行有效分析,這一功能可以對未來的趨勢進行預測。
增強的在線商務
MicrosoftSQLServer2000簡化了管理、優化工作,並且增強了迅速、成功的部署在線商務應用程序所需的可靠性和伸縮性。其中,用以提高可靠性的特性包括日誌傳送、在線備份和故障切換群集。在伸縮性方面的改進包括對多達32顆CPU和64GBRAM的支持。通過自動優化和改進後的管理特性--諸如數據文件尺寸的自動管理、基於向導的資料庫拷貝、自動內存管理和簡化的故障切換群集安裝與管理,在線商務應用程序能夠被迅速部署並有效管理。
利於構築"敏捷性商務"
所謂"敏捷性商務"就是能夠打破內部和外部的商業界限,對迅速改變的環境做出快速反應。。微軟已經與關鍵的合作夥伴建立起了戰略關系,創造出了能夠與許多供應商的產品實現整合的解決方案,因而企業用戶並不需要做出"要麼完全接受,要麼全部不要"的承諾。在部署解決方案的過程中,企業用戶不一定要拆除原有的設備從頭。敏捷商務讓企業用戶能夠充分利用現有的系統,自主決定所需的硬體和軟體解決方案以及由誰來提供,伸縮自如、游刃有餘。
SQL是英文Structured Query Language的縮寫,意思為結構化查詢語言。SQL語言的主要功能就是同各種資料庫建立聯系,進行溝通。按照ANSI(美國國家標准協會)的規定,SQL被作為關系型資料庫管理系統的標准語言。SQL語句可以用來執行各種各樣的操作,例如更新資料庫中的數據,從資料庫中提取數據等。目前,絕大多數流行的關系型資料庫管理系統,如Oracle, Sybase, Microsoft SQL Server, Access等都採用了SQL語言標准。雖然很多資料庫都對SQL語句進行了再開發和擴展,但是包括Select, Insert, Update, Delete, Create,以及Drop在內的標準的SQL命令仍然可以被用來完成幾乎所有的資料庫操作。
SQL Server
SQL Server 是一個關系資料庫管理系統。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同開發的,於1988 年推出了第一個OS/2 版本。在Windows NT 推出後,Microsoft與Sybase 在SQL Server 的開發上就分道揚鑣了,Microsoft 將SQL Server 移植到Windows NT系統上,專注於開發推廣SQL Server 的Windows NT 版本。Sybase 則較專注於SQL Server在UNIX 操作系統上的應用。
SQL Server 2000 是Microsoft 公司推出的SQL Server 資料庫管理系統,該版本繼承了SQL Server 7.0 版本的優點,同時又比它增加了許多更先進的功能。具有使用方便可伸縮性好與相關軟體集成程度高等優點,可跨越從運行Microsoft Windows 98 的膝上型電腦到運行Microsoft Windows 2000 的大型多處理器的伺服器等多種平台使用。
SQL Server 2005?
SQL Server 2005 是一個全面的資料庫平台,使用集成的商業智能 (BI) 工具提供了企業級的數據管理。SQL Server 2005 資料庫引擎為關系型數據和結構化數據提供了更安全可靠的存儲功能,使您可以構建和管理用於業務的高可用和高性能的數據應用程序。
SQL Server 2005 數據引擎是本企業數據管理解決方案的核心。此外 SQL Server 2005 結合了分析、報表、集成和通知功能。這使您的企業可以構建和部署經濟有效的 BI 解決方案,幫助您的團隊通過記分卡、Dashboard、Web services 和移動設備將數據應用推向業務的各個領域。
與 Microsoft Visual Studio、Microsoft Office System 以及新的開發工具包(包括 Business Intelligence Development Studio)的緊密集成使 SQL Server 2005 與眾不同。無論您是開發人員、資料庫管理員、信息工作者還是決策者,SQL Server 2005 都可以為您提供創新的解決方案,幫助您從數據中更多地獲益。
[編輯本段]微軟SQL Server 2008
SQL Server 2008是一個重大的產品版本,它推出了許多新的特性和關鍵的改進,使得它成為至今為止的最強大和最全面的SQL Server版本。這篇文章詳細介紹了Microsoft SQL Server 2008中的新的特性、優點和功能……
微軟的這個數據平台滿足這些數據爆炸和下一代數據驅動應用程序的需求,支持數據平台願景:關鍵任務企業數據平台、動態開發、關系數據和商業智能。
Microsoft數據平台願景
SQL Server的願景
許多因素致使產生了信息存儲爆炸。有了新的信息類型,例如圖片和視頻的數字化,和從RFID標簽獲得的感測器信息,公司的數字信息的數量在急劇增長。遵守規范和全球化的發展要求信息存儲的安全性和在任何時候都可用。同時,磁碟存儲的成本顯著地降低了,使得公司投資的每一美元可以存儲更多的數據。用戶必須快速的在大量的數據中找到相關的信息。此外,他們想在任何設備上使用這個信息,並且計劃每天使用,例如Microsoft Office系統應用程序。對數據爆炸和用戶期望值的增加的管理為公司製造了許多挑戰。
Microsoft® 數據平台願景提供了一個解決方案來滿足這些需求,這個解決方案就是公司可以使用存儲和管理許多數據類型,包括XML、e-mail、時間/日歷、文件、文檔、地理等等,同時提供一個豐富的服務集合來與數據交互作用:搜索、查詢、數據分析、報表、數據整合,和強大的同步功能。用戶可以訪問從創建到存檔於任何設備的信息,從桌面到移動設備的信息
SQL Server 2008新功能
這個平台有以下特點:
· 可信任的——使得公司可以以很高的安全性、可靠性和可擴展性來運行他們最關鍵任務的應用程序。
· 高效的——使得公司可以降低開發和管理他們的數據基礎設施的時間和成本。
· 智能的——提供了一個全面的平台,可以在你的用戶需要的時候給他發送觀察和信息。
一、可信任的
(一)保護你的信息
在過去的SQL Server 2005的基礎之上,SQL Server 2008做了以下方面的增強來擴展它的安全性:
* 簡單的數據加密
SQL Server 2008可以對整個資料庫、數據文件和日誌文件進行加密,而不需要改動應用程序。進行加密使公司可以滿足遵守規范和及其關注數據隱私的要求。簡單的數據加密的好處包括使用任何范圍或模糊查詢搜索加密的數據、加強數據安全性以防止未授權的用戶訪問、還有數據加密。這些可以在不改變已有的應用程序的情況下進行。
* 外鍵管理
SQL Server 2008為加密和密鑰管理提供了一個全面的解決方案。為了滿足不斷發展的對數據中心的信息的更強安全性的需求,公司投資給供應商來管理公司內的安全密鑰。 SQL Server 2008通過支持第三方密鑰管理和硬體安全模塊(HSM)產品為這個需求提供了很好的支持。
* 增強了審查
SQL Server 2008使你可以審查你的數據的操作,從而提高了遵從性和安全性。審查不只包括對數據修改的所有信息,還包括關於什麼時候對數據進行讀取的信息。SQL Server 2008具有像伺服器中加強的審查的配置和管理這樣的功能,這使得公司可以滿足各種規范需求。SQL Server 2008還可以定義每一個資料庫的審查規范,所以審查配置可以為每一個資料庫作單獨的制定。為指定對象作審查配置使審查的執行性能更好,配置的靈活性也更高。
(二)確保業務可持續性
* 改進了資料庫鏡像
SQL Server 2008基於SQL Server 2005,並提供了更可靠的加強了資料庫鏡像的平台。新的特性包括:
· 頁面自動修復。SQL Server 2008通過請求獲得一個從鏡像合作機器上得到的出錯頁面的重新拷貝,使主要的和鏡像的計算機可以透明的修復數據頁面上的823和824錯誤。
· 提高了性能。SQL Server 2008壓縮了輸出的日誌流,以便使資料庫鏡像所要求的網路帶寬達到最小。
C. sql資料庫的框架是什麼
「架構(Schema)是形成單個命名空間的資料庫實體的集合。 命名空間是一個集合,其中每個元素的名稱都是唯一的。 可以將架構看成一個存放資料庫中對象的一個容器。 架構實際上在sqlserver2000中就已經存在,當我們使用查詢分析器去查詢一個表的時候,一個完整的表的名稱應該包括伺服器名
D. 安裝sqlserver2008需要net framework 3.5
1、首先,需要下載.net framework3.5的安裝包。直接網路搜索,選擇干凈的網站下載到本地電腦。