亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Access > 正文

將Access數據庫移植到SQL Server方法淺析

2024-09-07 19:02:55
字體:
來源:轉載
供稿:網友

隨著用戶對于企業級高性能數據庫的需求的增長,用戶時常要從MicrosoftAccessJet引擎的文件-服務器環境下轉換到MicrosoftSQLServer的客戶-服務器環境。MicrosoftOffice2000中的Access2000UpsizingWizard可實現將數據表和查詢轉移到SQLServer7.0中。如果您用的是Access的較早的版本,您可以先將它升級為Access2000,然后再使用其中的UpsizingWizard,從而將您的應用移植到SQLServer中。

如果您并不太愿意采用Access2000和UpsizingWizard來實現移植,本文可以作為將Access2000移植到SQLServer的一個指南。轉移一個Access上的應用首先需要將數據轉移到SQLServer,然后將查詢轉移進數據庫,或是轉移為SQL文件以備稍后執行。最后要采取的步驟是移植應用程序。

數據庫移植中用到的SQLServer工具

SQLServer管理器(SQLServerEnterpriseManager)

SQLServer管理器允許對SQLServer以及SQLServer中的對象進行企業級的配置和管理。SQLServer管理器提供一個強有力的scheduling引擎,高度的容錯力和一個嵌入式的復制管理界面。使用SQLServer管理器可以實現以下功能:

管理連接和用戶許可

創建腳本程序

管理SQLServer對象的備份

備份數據和事務處理日志

管理表、視圖、存儲過程、觸發器、索引、規則、默認值以及用戶定義的數據類型

建立全文本索引、數據庫圖表和數據庫維護計劃

輸入和輸出數據

轉換數據

執行各種網絡管理任務

在以MicrosoftWindowsNT為操作系統的計算機中,SQLServerManager由SQLServerSetup進行安裝,并被默認為服務器組件,而在運行著WindowsNT和MicrosoftWindows95的機器上,它將被默認為客戶方組件。您將從SQLServerManager的圖形用戶界面中啟動數據轉移服務(DTS,DataTransformationServices)。

數據轉移服務(DataTransformationServices,DTS)

數據轉移服務允許您在多種異構數據源之間輸入和輸出數據,這些數據源采用基于數據庫的OLE體系結構;或在使用SQLServer7.0的多個計算機之間轉移數據庫和數據庫對象;您還可以通過運用數據轉移服務,更便捷地在一個在線事務處理系統(OLTP)中建立數據倉庫和數據中心。

DTSWizard允許您交互地創建DTS包,通過OLEDB和ODBC來輸入、輸出、驗證和轉移數據。DTSWizard還允許您在關系型數據庫之間拷貝圖解(schema)和數據。

SQLServer查詢分析器(QueryAnalyzer)

SQLServer查詢分析器是一種圖形化的查詢工具,通過它您可以分析一個查詢,同時執行多個查詢,查看數據和獲取索引建議。SQLServer查詢分析器提供了showplan選項,可用來顯示SQLServer查詢優化器所選擇的數據提取方法。

SQLServerProfiler

SQLServerProfiler可以實時地捕獲數據庫服務器活動的連續記錄。SQLServerProfiler允許您監控SQLServer產生的事件,過濾基于用戶指定標準的事件,或將操作步驟輸出到屏幕、文件或數據表。運用SQLServerProfiler,您可以重新執行所捕獲的上一次操作。這種工具可以幫助應用程序開發者識別那些可能會降低應用程序性能的事務處理。在將一個基于文件體系結構的應用程序移植到客戶/服務器結構中時該特性是很有用的,因為它的最后一步包括對面向新的客戶/服務器環境的應用程序進行優化。

轉移表和數據

使用DTSWizard將您的Access數據轉移到SQLServer,可采取以下步驟:

在SQLServerManager(EnterpriseManager)的工具菜單中,鼠標指向“DataTransformationServices”,然后點擊“ImportData.”

在“選擇數據源”(ChooseaDataSource)的對話窗口中,選擇MicrosoftAccess為數據源,然后輸入您的.mdb文件名(mdb為文件擴展名)或者選擇瀏覽文件。

在“選擇數據目標”(ChooseaDestination)的對話窗口中,選擇“MicrosoftOLEDBProviderforSQLServer”,再選擇好數據庫服務器,然后點擊所需的認證模式。

在“指定表備份或查詢”(SpecifyTableCopyorQuery)的對話窗口中,點擊“拷貝表”(Copytables)。

在“選擇數據源”的對話窗口中,點擊“選擇所有項”(SelectAll)。

移植MicrosoftAccess查詢

您可以將Access的查詢以下面的格式之一轉移至SQLServer中:

事務處理SQL腳本程序(Transact-SQLscripts)

事務處理SQL語句通常是由數據庫程序調用的,但是您也可以使用SQLServer7.0中包含的SQLServer查詢分析器直接運行它們。SQLServer查詢分析器可幫助開發者測試事務處理SQL語句,或運行那些執行查詢處理、數據操作(插入,修改,刪除)和數據定義(創建表)的事務處理SQL語句。

存儲過程(Storedprocedures)

開發者可以將大部分產生自Access查詢(查找,插入,修改,刪除)的事務處理SQL語句轉移至存儲過程。用事務處理SQL語句書寫的存儲過程可以用來對您的數據存取打包,并使之標準化,而且存儲過程實際上是存儲在數據庫中的。存儲過程可以帶參數,也可不帶參數,可以由數據庫程序調用或者由SQLServer查詢分析器手動執行。

視圖(Views)

視圖是從一個或多個表中顯示特定的行和列的虛擬表。它們允許用戶可以不直接執行構成查詢基礎的復雜連接而建立查詢。視圖不支持參數的使用。連接多個數據表的視圖不能用INSERT,UPDATE或DELETE語句來修改。視圖由事務處理SQL語句調用,也可用于SQLServer查詢分析器中運行的程序段。SQLServer視圖和SQL-92標準不支持視圖中的ORDERBY排序子句。如欲了解事務處理SQL,存儲過程和視圖的其他信息,請參閱SQLServer在線參考書。

Access查詢類型的SQLServer移植選擇與建議

一個SELECT語句可以存儲在事務處理SQL文件、存儲過程或是視圖中。建立存儲過程是將數據庫應用開發與數據庫設計的物理實施分開的最佳方法。存儲過程可在一處創建而由應用程序調用。

如果存儲過程所基于的數據庫變化了,而存儲過程經過仔細的修改以反應這些變化,則對存儲過程的調用將不會受到破壞。

交叉表(CROSSTAB)

交叉表經常用于總結報表。

一個Access的交叉表可以通過SQL程序段、存儲過程或視圖中的事務處理SQL語句來執行。每當發出一個查詢時,數據連接被重現執行以確保最近的數據得到使用。

根據實際應用情況,比較合適的方法是將交叉表中的數據存儲為一個臨時表(參考下面的MAKETABLE),臨時表對資源的需求比較少,但是臨時表在建立的同時只提供對數據的一個快照(snapshot)。

創建表(MAKETABLE)

Access中的“MAKETABLE”(創建表)可以通過事務處理SQL腳本程序或存儲過程中的事務處理SQL語言的建表語句“CREATETABLE”來執行。語法如下所示:

SELECT[ALL|DISTINCT]

[{TOPinteger|TOPintegerPERCENT}[WITHTIES]]

[INTOnew_table]

[FROM{}[,…n]]

[WHERE]

[GROUPBY[ALL]group_by_expression[,…n]

[WITH{CUBE|ROLLUP}]

CREATETABLEmytable(lowint,highint)

UPDATE(修改)

UPDATE語句可以存儲在事務_SQL腳本程序中,然而比較好地執行UPDATE語句的方法是創建一個存儲過程。

APPEND(添加)

ALLEND語句可以存儲在事務_SQL腳本程序中,然而比較好地執行APPEND語句的方法是創建一個存儲過程。

移植MicrosoftAccess的查詢到存儲過程和視圖

每個Access查詢都必須用以下的一系列語句替換:

CREATEPROCEDUREAS

GO

CREATEVIEWAS

GO

對每個Access查詢應執行:

打開Access,然后在SQLServer中,打開SQLServer查詢分析器。

在Access的數據庫窗口中點擊“Queries”tab鍵,然后點擊“Design”按鈕。

在“View”菜單上點擊“SQL”按鈕。

將整個查詢粘貼到SQLServer查詢分析器中。

測試語法,保存事務處理SQL語句以備后用,或者在數據庫中執行這些語句。您可以選擇將事務處理SQL語句保存到一段腳本程序中。

移植MicrosoftAccess查詢到事務處理SQL語句

大部分的Access查詢應該轉換成存儲過程和視圖。然而,有一些應用程序開發者不太常用的語句可以存儲為事務處理SQL腳本,一種以sql為文件擴展名的文本文件。這些文件可以在SQLServer查詢分析器中運行。

如果您打算將一些Access查詢轉換為sql文件的話,可以考慮根據它們使用的方式有區別地將這些事務處理SQL語句分別放在幾個腳本程序中。例如,您可以將必須以同樣頻率運行的事務處理SQL語句歸類到同一個腳本中。另一個腳本中則應包含所有只在某些條件下運行的事務處理SQL語句。此外,必須以一定順序執行的事務處理SQL語句應當歸類到一個不連續的腳本中。

將Access語句轉移到事務處理SQL文件

將語句拷貝到SQLServer查詢分析器中

使用藍色的多選項圖標分析語句

在適當時候執行該語句

要執行Access中的創建表(MAKETABLE)的查詢任務的開發者在SQLServer中有幾種選擇。開發者可創建下列對象之一:

一個視圖

視圖具有動態的虛擬表的效果,可提供最近的信息。這是一個輸入/輸出強化器,因為每當發出一個查詢時它都要求對數據表重現建立連接。

一個臨時表

臨時表為已連接的用戶會話建立一個快照。您可以建立局部的或全局的臨時表。局部臨時表只在當前會話中可見,而全局臨時表則在所有會話都是可見的。在局部臨時表的名字前加上單個數字的前綴((#table_name)),而在全局臨時表的名字前加上兩位數字的前綴(##table_name)。對臨時表的查詢執行起來非???,因為它們取得一個結果集的時候通常只用一個表,而不是將多個表動態地連接在一起來。

如欲了解臨時表的其他信息,請參閱SQLServer在線參考書。

SQLServer7.0中的數據轉換服務(DTS)允許您通過創建包來實現臨時表建立的標準化、自動化和進度安排。例如,當您移植Access2.0中的Northwind范例數據庫時,用于季度數據報表的交叉表可轉變為一個視圖或者一個可在規范基礎上建立臨時表的數據轉換。如欲了解關于DTS的其他信息,請參閱SQLServer在線參考書。

其他設計上的考慮

下面是當您將您的Access應用移植到SQLServer時必須考慮的一些其他問題:

使用參數

帶參數的SQLServer存儲過程需要一種不同于Access查詢的語法格式,例如:

Access2.0格式:

查詢名:EmployeeSalesByCountry,inNWIND.mdb:

PARAMETERS[BeginningDate]DateTime,[EndingDate]DateTime;

SELECTOrders.[OrderID],[LastName]&","&[FirstName]ASSalesperson,Employees.Country,Orders.[ShippedDate],[OrderSubtotals].SubtotalAS[SaleAmount]

FROMEmployeesINNERJOIN(OrdersINNERJOIN[OrderSubtotals]ONOrders.[OrderID]=[OrderSubtotals].[OrderID])ONEmployees.=Orders.

WHERE(((Orders.[ShippedDate])Between[BeginningDate]And[EndingDate]))

ORDERBY[LastName]&","&[FirstName],Employees.Country,Orders.[ShippedDate];

SQLServer7.0格式:

CREATEPROCEDUREEMP_SALES_BY_COUNTRY

@BeginningDatedatetime,

@EndingDatedatetime

AS

SELECTOrders.[OrderID],[LastName]+","+[FirstName]ASSalesperson,Employees.Country,

Orders.[ShippedDate],[OrderSubtotals].SubtotalAS[SaleAmount]

FROMEmployeesINNERJOIN(OrdersINNERJ

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩电视剧免费观看网站| 久久视频精品在线| 91性高湖久久久久久久久_久久99| 亚洲精品色婷婷福利天堂| 欧美性理论片在线观看片免费| 日本精品视频网站| 国产精品wwwwww| 日韩av不卡在线| 免费av在线一区| 欧美性猛交xxxx免费看| 久久精品99久久久久久久久| 午夜精品免费视频| 久久影视电视剧凤归四时歌| 国产亚洲人成网站在线观看| 国产精品国产三级国产aⅴ浪潮| 日韩av在线免播放器| 操91在线视频| 亚洲自拍小视频| 最近2019中文字幕在线高清| 少妇激情综合网| 亚洲一区二区三区乱码aⅴ蜜桃女| 欧美性生交xxxxx久久久| 国产精品久久久久久久久久尿| 久久人91精品久久久久久不卡| 欧美国产日韩xxxxx| 成人黄色在线免费| 国产精品久久久久久久久借妻| 日韩一级裸体免费视频| 欧美激情在线一区| 57pao成人永久免费视频| 欧美性极品少妇精品网站| 这里精品视频免费| 日本精品一区二区三区在线播放视频| 国产欧美日韩中文字幕| 色噜噜亚洲精品中文字幕| 亚洲精品wwww| 欧美激情一区二区三区在线视频观看| 亚洲欧美国产日韩天堂区| 黄色精品一区二区| 91久久嫩草影院一区二区| 久久国产精品久久精品| 日韩经典中文字幕| 国产精品福利久久久| 久久精品在线视频| 精品国内自产拍在线观看| 日韩在线观看免费全| 日韩av电影中文字幕| 97视频在线观看视频免费视频| 欧美精品久久一区二区| 国产成人综合av| 视频一区视频二区国产精品| 久久夜色精品国产亚洲aⅴ| 中文字幕久久亚洲| 午夜精品一区二区三区在线视| 国产丝袜精品第一页| 亚洲精品网站在线播放gif| 亚洲aaa激情| 欧美视频不卡中文| 亚洲欧美中文日韩在线| 91黑丝在线观看| 日韩av中文字幕在线免费观看| 97视频在线观看视频免费视频| 亚洲欧美另类中文字幕| 欧洲成人性视频| 欧美激情视频在线观看| 最新国产成人av网站网址麻豆| 91久久精品美女高潮| 欧美亚洲成人精品| 日韩在线观看高清| 精品国产一区二区三区久久久| 欧美日韩中文字幕综合视频| 亚洲欧美精品一区| 久久精品视频播放| 欧美xxxx14xxxxx性爽| 国产一区二区激情| 亚洲深夜福利视频| 日韩视频在线免费观看| 欧美大片在线看| 欧美国产日韩一区| 亚洲国产欧美一区二区丝袜黑人| 欧美视频在线观看免费网址| 欧美日韩中文字幕综合视频| 欧美激情一级精品国产| 色诱女教师一区二区三区| 青青青国产精品一区二区| 亚洲一区二区三区乱码aⅴ蜜桃女| 亚洲免费视频观看| 性色av一区二区三区在线观看| 国产精品久久久久久av福利软件| 久久久在线免费观看| 91亚洲国产精品| 国产精品欧美日韩| 午夜精品福利视频| 亚洲精品美女网站| 中文字幕少妇一区二区三区| 国产精品私拍pans大尺度在线| 亚洲久久久久久久久久| 日本高清+成人网在线观看| 在线免费观看羞羞视频一区二区| 国产精品一区二区av影院萌芽| 久久精品国产久精国产思思| 国语自产精品视频在线看| 丝袜亚洲欧美日韩综合| 亚洲欧美国产va在线影院| 亚洲成成品网站| 九色精品美女在线| 亚洲视频电影图片偷拍一区| 亚洲成人av在线| 成人黄色短视频在线观看| 欧美疯狂做受xxxx高潮| 久久亚洲国产成人| 国产精品成人免费电影| 中文字幕视频在线免费欧美日韩综合在线看| 欧美视频在线看| 91香蕉亚洲精品| 九九热最新视频//这里只有精品| 欧美成人免费大片| 国产精品久久久久久久久男| 国产精品久久久久久久天堂| 亚洲自拍偷拍区| 亚洲一区二区黄| 欧美大全免费观看电视剧大泉洋| 亚洲激情在线观看视频免费| 亚洲成色999久久网站| 日韩精品视频免费在线观看| 26uuu亚洲伊人春色| 国产精品日韩在线播放| 亚洲精品国精品久久99热一| 欧美电影在线免费观看网站| 亚洲免费电影在线观看| 亚洲色无码播放| 日韩av最新在线观看| xxxxxxxxx欧美| 精品无人国产偷自产在线| 午夜精品视频网站| 日韩精品免费综合视频在线播放| 狠狠色狠狠色综合日日五| 亚洲精品免费一区二区三区| 美日韩精品免费视频| 久久精品一本久久99精品| 992tv成人免费视频| 另类专区欧美制服同性| 欧美日韩精品在线观看| 在线亚洲国产精品网| 深夜福利亚洲导航| 日韩在线视频观看| 亚洲最大在线视频| 久久久av一区| 日韩有码在线电影| 亚洲激情电影中文字幕| 尤物tv国产一区| 国模精品系列视频| 国产精品久久久久国产a级| 欧美久久精品午夜青青大伊人| 青草青草久热精品视频在线网站| 亚洲精品视频免费| 日韩av一区二区在线| 久久手机免费视频| 欧美在线视频一二三| 国产精品偷伦视频免费观看国产| 欧美性猛交xxxx乱大交蜜桃| 久久久噜噜噜久噜久久| 欧美日韩黄色大片| 这里只有精品视频在线|