ÔÚSQL SERVER 2005Öе÷ÓÃWeb Service
¡¾IT168 ¼¼ÊõÎĵµ¡¿
½éÉÜ
SQL SERVER2005ÌṩÁËÔÚ.NETÖÐ×Ô¶¨Ò庯Êý¡¢´æ´¢¹ý³Ì¡¢¾ÛºÏ¡¢´¥·¢Æ÷ÒÔ¼°ÀàÐ͵ŦÄÜ¡£ÓÚÊÇ£¬ÎÒÃÇ¿ÉÒÔÔÚÊý¾Ý¿âµÄº¯Êý¡¢´æ´¢¹ý³Ì»òÀàÐÍÕûºÏ.NET¶ÔÏó·½·¨µÈ¡£ÔÚ֮ǰµÄһƪÎÄÕ£¬ÎÒÃÇÑÝʾÁËÈçºÎ½«ÕýÔò±í´ïʽ¹¦ÄÜÕûºÏµ½SQL CLRÖС£ÔÚ±¾ÎÄÖУ¬»¹ÊÇÑÝʾÕâÖÖÕûºÏ£¬µ«ÊÇÕâ´ÎÊÇ´ÓSQL CLRÖе÷ÓÃÒ»¸öWeb Service¡£ÎÒÃǽ«Ê¹ÓÃAdventureWorksÕâ¸öÑùÀýÊý¾Ý¿â£¬¶¨ÒåÒ»¸öº¯Êý£¬¸ù¾Ýhttp://www.webservicex.net/CurrencyConvertor.asmxÕâ¸öWeb ServiceÌṩµÄ»ãÂÊ£¬½øÐдÓÅ·Ôªµ½ÃÀÔªµÄÍâ»ãת»»¡££¨Õâ¸öWebServiceÌṩµÄ»ãÂÊ£¬Ö»ÓÃÓÚÑÝʾ£¬²»ÄÜ×÷ÎªÕæÊµ½ðÈÚ½»Ò×µÄÊý¾Ý¡££©
±¾ÎÄûÓÐÏêϸµÄÃèÊöËùÓеÄϸ½Ú£¬¶ÁÕßÓ¦¸Ã¾ßÓÐÒ»¶¨µÄÔÚSQL SERVER2005Ï¿ª·¢CLRµÄ»ù´¡¡£
¶¨Òåת»»º¯Êý
Ê×ÏÈ£¬ÔÚVisual Studio 2005ÖУ¬¸ù¾Ý¿ª·¢Ä£°å£¬Ñ¡Ôñн¨Ò»¸öC#»òÕßVB.NETµÄSQL SERVERÏîÄ¿¡££¨×¢Ò⣺ÔÚBeta°æÖУ¬±ØÐëÔÚ°²×°VS2005֮ǰ°²×°SQL SERVER 2005£©
*ÔÚһЩ·ÇÕýʽµÄVS2005µÄ°æ±¾ÖУ¬Ö±½ÓʹÓù¤¾ßÒýÓÃWebServiceÉú³ÉµÄ´úÀíÀ಻ÄÜÔÚSQL SERVER CLRÖÐʹÓá£ÔÒòÊÇÕâÖÖ´úÀíÀàÉú³ÉÁ˲»ÄÜʹÓÃÔÚCLRÖеÄͬ²½·½·¨¡£¾ßÌå¿É²Î¿¼Vineet Rao ÔÚ blogs.msdn.comÖеÄÎÄÕ¡£½â¾öµÄ·½·¨ÊÇÀûÓÃC:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BinĿ¼ÏµÄWSDL.exe¹¤¾ßÉú³ÉÀÏʽÒì²½·½·¨µÄ´úÀíÀֻ࣬ÓÃÕâÖÖÀà²ÅÄÜÔÚCLRÖÐÒÔExternal ACCESSµÄȨÏÞ¼ÓÔØ¡£Èç¹ûÎÒÃÇʹÓÓДµÄ´úÀíÀ࣬±ØÐëʹÓÃUnsafeµÄ°²È«¼¶±ð£¬ÕâÖÖ·½Ê½Ó¦¾¡Á¿±ÜÃâ¡£ÎÒÃÇ¿ÉÒÔʹÓÃÒ»¸öXMLÅäÖÃÎļþÀ´Éú³ÉÐèÒª¹æ·¶µÄ´úÀíÀà¡£´´½¨Ò»¸öÒÔÏÂÄÚÈݵÄXMLÎļþ£º
<wsdlParameters xmlns='http://microsoft.com/webReference/'>
<language>c#</language>
<protocol>Soap</protocol>
<nologo>true</nologo>
<sharetypes>false</sharetypes>
<webReferenceOptions>
<codeGenerationOptions>properties oldAsync</codeGenerationOptions>
</webReferenceOptions>
</wsdlParameters>
¼ÙÉè±£´æÂ·¾¶Îª£ºc:\oldwsdlconfig.xml£¨Èç¹ûʹÓÃVB.netÏîÄ¿£¬ÔòÌæ»»Ê¹ÓÃ<language>vb</language>ÔªËØ£©¡£È»ºó£¬Ê¹ÓÃÒÔÏÂÃüÁîÐÐÉú³É´úÀíÀࣺ
C:\Program Files\Microsoft Visual Studio 8\SDK\
Ïà¹ØÎĵµ£º
ÔÚSQLÓï¾äÓÅ»¯¹ý³ÌÖУ¬ÎÒÃǾ³£»áÓõ½hint,ÏÖ×ܽáÒ»ÏÂÔÚSQLÓÅ»¯¹ý³ÌÖг£¼ûOracle
HINTµÄÓ÷¨£º
1. /*+ALL_ROWS*/
±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑÍÌÍÂÁ¿,ʹ×ÊÔ´ÏûºÄ×îС»¯.
ÀýÈç:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT'; 2. /*+FIRST_ROWS*/
±íÃ÷¶ÔÓï¾ä¿ ......
ͨ³££¬ÄãÐèÒª»ñµÃµ±Ç°ÈÕÆÚºÍ¼ÆËãһЩÆäËûµÄÈÕÆÚ£¬ÀýÈ磬ÄãµÄ³ÌÐò¿ÉÄÜÐèÒªÅжÏÒ»¸öÔµĵÚÒ»Ìì»òÕß×îºóÒ»Ìì¡£ÄãÃǴ󲿷ÖÈË´ó¸Å¶¼ÖªµÀÔõÑù°ÑÈÕÆÚ½øÐзָÄê¡¢Ô¡¢Èյȣ©£¬È»ºó½ö½öÓ÷ָî³öÀ´µÄÄê¡¢Ô¡¢ÈյȷÅÔÚ¼¸¸öº¯ÊýÖмÆËã³ö×Ô¼ºËùÐèÒªµÄÈÕÆÚ£¡ÔÚÕâÆªÎÄÕÂÀÎÒ½«¸æËßÄãÈçºÎʹÓÃDATEADDºÍDATEDIFFº¯ÊýÀ´¼ÆËã³öÔÚÄãµÄ³ÌÐòÖ ......
Èç¹ûÄãÕýÔÚ¸ºÔðÒ»¸ö»ùÓÚSQL ServerµÄÏîÄ¿£¬»òÕßÄã¸Õ¸Õ½Ó´¥SQL Server£¬Äã¶¼ÓпÉÄÜÒªÃæÁÙһЩÊý¾Ý¿âÐÔÄܵÄÎÊÌ⣬ÕâÆªÎÄÕ»áΪÄãÌṩһЩÓÐÓõÄÖ¸µ¼£¨ÆäÖдó¶àÊýÒ²¿ÉÒÔÓÃÓÚÆäËüµÄDBMS£©¡£
ÔÚÕâÀÎÒ²»´òËã½éÉÜʹÓÃSQL ServerµÄÇÏÃÅ£¬Ò²²»ÄÜÌṩһ¸ö°üÖΰٲ¡µÄ·½°¸£¬ÎÒËù×öµÄÊÇ×ܽáһЩ¾Ñé----¹ØÓÚÈçºÎÐγÉÒ»¸öºÃµÄÉè¼Æ¡£Õ ......
Create PROCEDURE [dbo].[PR_addRoles]
@RolesID INT,
@Roles varchar (100),
@ID INT OUT
AS
BEGIN TRY
BEGIN TRAN
INSERT FS_Roles (RolesID,Roles) VALUES (@RolesID,@Roles)
COMMIT TRAN
SET @ID=1
END TRY
BEGIN CATCH
ROLLBACK TRAN
SET @ID=0
END CATCH
......
1 --ÏÂÃæµÄ´úÂëÉú³É³¤¶ÈΪ8µÄ±àºÅ£¬±àºÅÒÔBH¿ªÍ·£¬ÆäÓà6λΪÁ÷Ë®ºÅ¡£
2 --µÃµ½Ð±àºÅµÄº¯Êý
3 CREATE FUNCTION f_NextBH()
4 RETURNS char(8)
5 AS
6 BEGIN
7 RETURN(SELECT 'BH'+RIGHT(1000001+ISNULL(RIGHT(MAX(BH),6),0),6) from tb WITH(XLOCK,PAGLOCK))
8 END
9 GO
10
11 --ÔÚ±íÖÐ ......