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

首頁 > 開發 > XML > 正文

使用SQLXML 3.0把存儲過程暴露為Web服務

2024-09-05 20:55:49
字體:
來源:轉載
供稿:網友
最新的技術是web服務?,F在出現在所有市場中的類似簡單對象訪問協議(soap)、web服務描述語言(wsdl)、通用描述、發現和集成(uddi)等術語的基本元素都是xml和internet。

web服務用于建立松散連接的應用程序并實現互操作性。松散連接的應用程序使你能重新配置、重新部署或重新定位它的實現而不影響相關的應用程序。互操作性涉及到建立能夠在允許web服務的任何平臺上使用的應用程序。通過web服務暴露sql server給予應用程序一個松散的連接接口,使你能夠修改數據庫的結構和位置而不影響應用程序。另外,web服務使sql server能與更多的編程環境和平臺交互操作。

為了達到互操作性,開發者需要在一套開放的工業標準和協議上建立web服務。xml是這些標準中多數的基礎,提供了不依賴平臺的描述和數據表現。建立在xml上的soap提供了基于標準的向應用程序發送數據和從應用程序接收數據的途徑,代表性的是使用http。wsdl描述了位置、方法、參數和web服務使用的數據類型。uddi為注冊web服務或查找需要的其它web服務的目錄提供了一個接口。通過把這些標準技術和t-sql編程組合在一起,你能把sql server存儲過程實現為web服務。

sql server 2000 web release 3(sqlxml 3.0)的焦點是web服務(你能夠通過鏈接http://microsoft.com/sql/default.asp下載sqlxml 3.0)。sqlxml 3.0使你能夠從數據庫中選擇存儲過程并從虛擬目錄中選擇xml模版,把它們暴露為web服務的方法。因為你能夠通過web服務和傳統方法(例如t-sql exec語句、ole db、ado和odbc)調用存儲過程,你可以最大化地重復使用這些組件。簡單地說,sqlxml 3.0使你能把數據庫編程中的專門技術擴展到web服務中而不需要學習新的語言或工具。下面讓我們看看怎樣把存儲過程轉變為web服務。

配置虛擬目錄。把存儲過程暴露為web服務的第一步是從安裝sqlxml 3.0產生的configure iis support(配置iis支持)菜單項中選擇microsoft iis virtual directory manager(微軟iis虛擬目錄管理器)。要建立虛擬目錄,從左邊的樹視圖中選擇web服務器,接著展開該視圖并點擊默認的web站點。右擊右邊面板中的任意區域,選擇context-》new-》virtual directory來顯示一個new virtual directory properties(新虛擬目錄屬性)對話框。在“安全和數據源”頁面上,輸入能夠訪問northwind示例數據庫的sql server登陸許可。注意你在“通用”頁面上選擇的目錄的許可必須給你在“安全和數據源” 頁面上為iis配置的默認用戶授權(請查看iis文檔尋找配置的詳細信息)。為了避免許可的問題,為你的虛擬目錄選擇inetpub/wwwroot的一個子目錄,iis默認用戶自動擁有訪問inetpub/wwwroot下面數據的權限。下一步,在“設置”頁面上,選擇allow post選項,這樣虛擬目錄能夠接受http post請求。點擊“應用”。

配置虛擬名稱。在配置虛擬目錄后,點擊new virtual directory properties(新虛擬目錄屬性)對話框上的“虛擬名稱”頁面。從虛擬名稱列表中選擇新虛擬名稱,為該虛擬名稱選擇一個名字,接著把它的類型設置為soap。列表1顯示了把soap字符串作為虛擬名稱的vbscript代碼。給虛擬名稱輸入一個路徑。該路徑包含了當你把修改保存到根目錄時從iis虛擬目錄管理器中輸出的wsdl文件。我通常選擇('.'),它選擇相同的目錄作為虛擬目錄。你可以接收對話框中剩余字段的默認值。點擊“保存”。當你保存虛擬名稱時,sqlxml 3.0給你指定的虛擬名稱目錄寫入兩個文件,擴展名為.wsdl。其它的文件擴展名為.ssc,包含iis虛擬目錄管理器使用的存儲過程的xml描述。現在你選擇希望暴露作為web服務方法的存儲過程。在本文的例子中,我使用列表2中所示的ordersforcustomer存儲過程。這個存儲過程返回指定客戶id(作為參數傳遞進的)的訂單集合。進行下一步之前,你必須使用查詢分析器(query analyzer)把這個存儲過程安裝在northwind示例數據庫中。

列表1:調用一個存儲過程的vbscript代碼
sub main()
dim xmlhttp
set xmlhttp = createobject("msxml2.xmlhttp.4.0")
dim request
request = "<?xml version='1.0' encoding='utf-8'
  standalone='no'?>" & _
"<soap-env:envelope xmlns:
  soap-env='http://schemas.xmlsoap.org/soap/envelope/'>" & _
" <soap-env:body>" & _
" <ordersforcustomer xmlns=
    'http://localhost/june2002/soap'>" & _
" <cid>bottm</cid>" & _
" </ordersforcustomer>" & _
" </soap-env:body>" & _
"</soap-env:envelope>"
xmlhttp.open "post", "http://localhost/june2002/soap", false
xmlhttp.send (request)
msgbox (xmlhttp.responsexml.xml)
end sub



列表2:建立ordersforcustomer存儲過程的代碼
create procedure ordersforcustomer @cid nvarchar(50)
as
select * from customers, orders
where customers.customerid = @cid
and customers.customerid = orders.customerid
go



建立web服務。在“新虛擬目錄屬性”對話框的“虛擬名稱”頁面上選擇剛剛建立的虛擬名稱,接著點擊“配置”(configure)。這樣就顯示了soap虛擬名稱配置對話框。在這個對話框中,選擇你希望暴露作為web服務方法的存儲過程。為了選擇一個存儲過程,點擊("..."),它建立你配置虛擬目錄訪問的一個數據庫中可用的存儲過程列表。不要選擇包含for xml子句查詢的存儲過程。作為代替,你必須選擇返回標準結果集合的存儲過程。sqlxml 3.0期望存儲過程返回輸出參數或標準結果的結果集。接著該結果在中間層中被建立為xml。選擇返回標準結果集的存儲過程使所有可以用于web服務或傳統編程方法(例如t-sql)的存儲過程的靈活性最大化了。當你在中間層中建立xml查詢結果,要小心避免sqlxml 3.0的限制(你可以查看sqlxml 3.0在線文檔查看這些限制的詳細信息)。你選擇ordersforcustomer存儲過程后,點擊“確定”(ok),接著點擊soap虛擬名稱配置對話框的“保存”(save)按鈕。這樣你就已經建立了第一個web服務了。你可以使用任何文本編輯器檢查為虛擬名稱選擇的目錄中的wsdl。該wsdl文件包含余你選擇的web服務相對應的方法定義。

為了測試新建立的web服務,使用列表1中顯示的vbscript代碼。該代碼建立一個調用該web服務的soap消息,接著使用xmlhttp對象把該soap請求發送給web服務。soap結果顯示在一個消息框中。這個客戶端簡單演示了soap小心在vbscript和sqlxml 3.0之間的交換。但是,它也顯示了現在存儲過程調用可以通過在http上使用soap跨平臺交互操作,它們通過wsdl和scc文件中的描述提供了到存儲過程的松散連接。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美成人剧情片在线观看| 超碰日本道色综合久久综合| 亚洲石原莉奈一区二区在线观看| 久久九九有精品国产23| 欧美日韩在线视频一区| 456亚洲影院| 日韩女优人人人人射在线视频| 精品久久久久久久中文字幕| 亚洲精品videossex少妇| 97视频人免费观看| 色播久久人人爽人人爽人人片视av| 国产一区二区动漫| 久久精品视频导航| 国产精品美腿一区在线看| 琪琪第一精品导航| 国外成人在线直播| 91夜夜未满十八勿入爽爽影院| 亚洲香蕉成人av网站在线观看| 日韩中文字幕久久| 中文字幕视频在线免费欧美日韩综合在线看| 中文字幕一区日韩电影| 伊人久久久久久久久久久| 国产999精品视频| 国产精品亚洲一区二区三区| 国产精品女视频| 亚洲欧美制服第一页| 国产亚洲精品久久久久久777| 欧美疯狂性受xxxxx另类| 久久人人爽国产| 欧美另类精品xxxx孕妇| 亚洲性线免费观看视频成熟| 日韩在线免费视频观看| 日韩一区二区三区xxxx| 深夜成人在线观看| 亚洲第一中文字幕在线观看| 久久av在线播放| 性欧美办公室18xxxxhd| 蜜臀久久99精品久久久久久宅男| 精品自拍视频在线观看| 欧美日韩另类字幕中文| 欧美日韩激情视频8区| 色偷偷偷亚洲综合网另类| 欧美老肥婆性猛交视频| 国产亚洲欧美一区| 久久精品国产亚洲精品| 国产91在线播放九色快色| 亚洲午夜av久久乱码| 欧美在线亚洲在线| 精品亚洲一区二区三区在线观看| 国产亚洲精品日韩| 少妇激情综合网| 亚洲欧美三级伦理| 欧美老女人bb| 日韩av免费网站| 国产丝袜一区二区三区免费视频| 高清欧美性猛交xxxx| 欧美日韩亚洲天堂| 欧美人交a欧美精品| 日韩亚洲欧美中文在线| 国产午夜精品全部视频在线播放| 国产精品欧美在线| 亚洲精品国产免费| 日韩av免费一区| 日韩中文字幕网站| 日韩高清电影免费观看完整版| 国产精品毛片a∨一区二区三区|国| 日韩欧美中文字幕在线观看| 亚洲欧美在线第一页| 91sao在线观看国产| 北条麻妃一区二区三区中文字幕| 2020欧美日韩在线视频| 日韩在线观看电影| 2019中文字幕免费视频| www欧美日韩| 96pao国产成视频永久免费| xxxxx91麻豆| 热re91久久精品国99热蜜臀| 在线看欧美日韩| 国产日韩精品电影| 最好看的2019的中文字幕视频| 日韩三级成人av网| 欧美电影免费观看网站| 亚洲人成77777在线观看网| 亚洲免费人成在线视频观看| 91精品久久久久久久久久久| 国产亚洲精品久久久久动| 国产精品自产拍高潮在线观看| 国产成人在线一区| 欧美精品videos性欧美| 在线视频欧美日韩| 成人免费看吃奶视频网站| 国模极品一区二区三区| 日韩美女中文字幕| 亚洲永久免费观看| 欧美激情精品久久久久久免费印度| 中文字幕亚洲欧美日韩在线不卡| 91精品久久久久久久久中文字幕| 亚洲精品成人免费| 日韩成人xxxx| 欧美成aaa人片免费看| 欧美日韩免费区域视频在线观看| 69av视频在线播放| 亚洲xxxxx| 亚洲一区二区三区成人在线视频精品| 97在线视频免费看| 亚洲a在线播放| 日韩在线观看免费高清完整版| 亚洲欧洲日韩国产| 欧美影院成年免费版| 久久99久久99精品免观看粉嫩| 欧美日韩亚洲系列| 免费不卡欧美自拍视频| 欧美极品xxxx| 国内精品模特av私拍在线观看| 中文字幕日韩在线播放| 久久精视频免费在线久久完整在线看| 国产精品∨欧美精品v日韩精品| 97在线看免费观看视频在线观看| 亚洲免费福利视频| 国内外成人免费激情在线视频| 亚洲男人天堂九九视频| 亚洲精品99999| 国产精品av网站| 国产精品日韩av| 精品高清美女精品国产区| 亚洲jizzjizz日本少妇| 久久久久久久一区二区| 精品福利视频导航| 欧美精品一本久久男人的天堂| www.99久久热国产日韩欧美.com| 国产精品色午夜在线观看| 亚洲成人久久一区| 在线播放精品一区二区三区| 亚洲男人第一网站| 伊人久久久久久久久久| 日韩av在线网站| 久久天天躁狠狠躁夜夜躁2014| 精品少妇v888av| 久久国产精品亚洲| 91久久在线视频| 亚洲成人aaa| 视频在线观看一区二区| 国产精品综合网站| 精品成人在线视频| 久久九九热免费视频| 91国产在线精品| 国产中文欧美精品| 国产欧美日韩精品在线观看| 亚洲综合精品一区二区| 国产日本欧美一区| 色哟哟入口国产精品| 亚洲男人天堂手机在线| 亚洲有声小说3d| 久久九九精品99国产精品| 911国产网站尤物在线观看| 福利精品视频在线| 欧美精品videos| 国产精品偷伦免费视频观看的| 欧美成aaa人片在线观看蜜臀| 欧美洲成人男女午夜视频| 亚洲第五色综合网| 亚洲国产精品女人久久久| 91免费看视频.| xxav国产精品美女主播|