国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

SQL Server 2005新功能-TSQL

2024-08-31 00:47:49
字體:
來源:轉載
供稿:網友

sql server 2005相對于sql server 2000改進很大,有些還是非常實用的。

舉幾個例子來簡單說明 這些例子我引用了northwind庫。

1. top 表達式
sql server 2000的top是個固定值,是不是覺得不爽,現在改進了。

--前n名的訂單
declare @n int 
set @n = 10 
select top(@n) * from orders

2. 分頁
不知各位過去用sql server 2000是怎么分頁的,大多都用到了臨時表。sql server 2005一句話就支持分頁,性能據說也非常不錯。


--按freight從小到大排序,求20到30行的結果 
select * from( 
    select orderid, freight, row_number() over(order by freight) as row from orders 
) a 
where row between 20 and 30

3. 排名


select * from( 
    select orderid, freight, rank() over(order by freight) as rank from orders 
) a 
where rank between 20 and 30

4. try ... catch
sql server 2000沒有異常,t-sql必須逐行檢查錯誤代碼,對于習慣了try catch程序員,2005是不是更加親切:


set xact_abort on  -- 打開 try功能 
begin try 
    begin tran 
        insert into orders(customerid) values(-1) 
    commit tran 
    print 'commited' 
end try 
begin catch 
    rollback    
    print 'rolled back' 
end catch

5. 通用表達式cte
通過表達式可免除你過去創建臨時表的麻煩。
www.knowsky.com


--例子:結合通用表達式進行分頁
with orderfreight as( 
    select orderid, freight, row_number() over(order by freight) as row from orders 

select orderid, freight from orderfreight where row between 10 and 20
特別,通過表達式還支持遞歸。


6. 直接發布web service
想要把store procedure變成web service就用這個吧,.net, iis都不需要,通過windows 2003的http protocol stack直接發布webservice,用這個功能需要windows 2003 sp1

--dataset custordersorders(string customerid) 
create endpoint orders_endpoint 
state=started 
as http( 
    path='/sql/orders', 
    authentication=(integrated), 
    ports=(clear) 

for soap( 
    webmethod 'custordersorders'(   
        name='northwind.dbo.custordersorders' 
    ), 
    
    wsdl=default, 
    database='northwind', 
    namespace='http://mysite.org/' 
)
web service就發布好了,敲入http://localhost/sql/orders?wsdl得到wsdl

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巨鹿县| 罗甸县| 拜泉县| 惠州市| 周至县| 金溪县| 巴林左旗| 昌黎县| 满城县| 雷州市| 噶尔县| 罗田县| 专栏| 孟津县| 榕江县| 临夏市| 慈利县| 会东县| 西乡县| 仁布县| 洪雅县| 龙南县| 孝义市| 延安市| 彭山县| 澳门| 禹城市| 环江| 乐清市| 民和| 杭锦旗| 黑山县| 沂源县| 晋江市| 文登市| 松阳县| 万宁市| 调兵山市| 渭南市| 寿宁县| 黔江区|