成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

講述ADO分頁種種技巧

開發(fā) 后端
你可以在數(shù)據(jù)表被填充后修改"Customers1"表的屬性為ADO分頁但是接下來的填充的結(jié)果是"Customers"表被重新填充,但是"Orders"表被略過了并且建立了另一個"Customers1"表。

大家都說:原來的ADO分頁方法中的游標(biāo)效率低下,而且容易引起鎖,甚至導(dǎo)致死機(jī)。我想問:這個游標(biāo)到底是存在于客戶端、WEB服務(wù)器還是數(shù)據(jù)庫?他們是不是一回事?是否根據(jù)ADO可以讓他們都存在游標(biāo)?到底哪種的游標(biāo)最不好?

還有一個問題:
我好不容易找到了一個TOP 結(jié)合max的分頁方法,但今天我發(fā)現(xiàn),我搜索我的1000萬的數(shù)據(jù)庫得到25萬條數(shù)據(jù),甚至包括like搜索,但用最原始的ADO方法,發(fā)現(xiàn)速度也非常的快?。?!比TOP等方法慢不到哪里去???為什么這么快呢?

在某一時刻只有一個DataReader能夠打開。。在ADO分頁中,如果你打開一個連接并請求兩個使用只向前的只讀游標(biāo)的記錄集,ADO隱性地為游標(biāo)的生命周期的數(shù)據(jù)存儲打開第個不在連接池中的連接,接著隱性地關(guān)閉它。在ADO.NET中,如果你想在同一個數(shù)據(jù)存儲上同時打開兩個DataReader,你必須明確地建立兩個連接,每個DataReader一個。通過這種方法ADO.NET給了你對連接池使用的更多控制。 

默認(rèn)情況下,DataReader在每個Read方法中把整個行載入內(nèi)存中。這允許你隨機(jī)訪問當(dāng)前行的任意列。如果隨機(jī)訪問是不必要的,為了提高性能,把CommandBehavior.SequentialAccess傳遞給ExecuteReader調(diào)用。這改變了DataReader的默認(rèn)行為,只在需要時才把數(shù)據(jù)載入內(nèi)存。ADO分頁注意CommandBehavior.SequentialAccess要求你按次序訪問返回的列。ADO分頁也就是,一旦你讀過了返回的某個列,就不能再次讀取它的值了。 

如果你結(jié)束了從DataReader中讀取數(shù)據(jù),但是仍然有大量的未讀取的結(jié)果等待,那么調(diào)用Command的Cancel比調(diào)用DataReader 的Close好。調(diào)用DataReader 的Close引起它檢索等待的結(jié)果并且先清空流后關(guān)閉游標(biāo)。調(diào)用Command的 Cancel刪除服務(wù)器上的結(jié)果,因此當(dāng)DataReader關(guān)閉時,它不需要再讀取結(jié)果。ADO分頁如果你從Command返回輸出參數(shù),則調(diào)用Cancel刪除它們。如果你要讀取任何輸出參數(shù),不要調(diào)用Command 的Cancel;***調(diào)用DataReader的 Close。 

當(dāng)使用DataReader檢索二進(jìn)制大對象時,必須給ExecuteReader方法調(diào)用傳遞CommandBehavior.SequentialAccess。因為DataReader的默認(rèn)行為是在每個Read中把整行載入內(nèi)存中,但是由于BLOB可能很大,結(jié)果可能是一個BLOB對象使用大量的內(nèi)存。SequentialAccess把DataReader的行為設(shè)置為只載入必要的數(shù)據(jù),ADO分頁接著你能使用GetBytes或者GetChars控制每次載入多少數(shù)據(jù)。 

記住使用SequentialAccess時,ADO分頁你不能無序地訪問DataReader返回的不同字段。也就是說,如果查詢返回三個列,第三個是BLOB,并且你希望訪問前兩個列的數(shù)據(jù),你必須先訪問***個列,接著在訪問BLOB數(shù)據(jù)前訪問第二個列。這是因為現(xiàn)在數(shù)據(jù)是按次序返回的,在DataReader讀過它后不能再次訪問。 

責(zé)任編輯:chenqingxiang 來源: 博客園
相關(guān)推薦

2010-01-11 13:31:03

C++語言

2010-03-05 15:43:46

Android SDK

2009-12-28 09:19:21

ADO屬性

2009-11-11 13:13:00

ADO.NET分頁

2010-01-04 10:27:04

DataTable對象

2009-11-12 11:38:03

ADO.NET連接事件

2009-12-31 13:41:39

ADO.NET架構(gòu)

2010-01-13 14:17:53

C++編譯語言

2009-12-23 10:18:21

ADO.NET 應(yīng)用程

2009-12-31 14:35:16

ADO缺點

2009-12-18 16:44:57

ADO.NET統(tǒng)計

2009-12-30 14:21:21

ADO.NET設(shè)置

2009-12-29 14:01:45

ADO.NET Sql

2009-12-29 11:21:55

ADO多線程

2009-12-31 11:02:48

ADO類

2010-01-04 17:27:15

ADO.NET異步操作

2010-01-07 13:11:09

設(shè)置JSON

2009-12-28 15:38:36

ADO.NET分頁

2010-01-04 17:05:46

ADO 存取

2009-12-21 16:40:10

ADO連接
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 亚洲精品久久久久中文字幕欢迎你 | 99婷婷| 在线观看第一页 | 精品国产91 | 久久久久久久久中文字幕 | 国产在线精品一区二区三区 | 欧美精品一区二区三区在线 | 成人亚洲在线 | 国产精品美女一区二区 | 99热.com| 99亚洲| 亚洲一区在线播放 | 一区二区三区高清 | 嫩草一区二区三区 | 黄色香蕉视频在线观看 | 精品国产一区二区三区久久狼黑人 | 国产精品国产精品国产专区不卡 | 久久精品色欧美aⅴ一区二区 | 亚洲视频二区 | 久久国产精品偷 | 成年人在线观看视频 | 久久成人精品视频 | 国产日韩欧美中文字幕 | 成人三级视频在线观看 | 黄色大片免费网站 | 日韩精品一区二区三区视频播放 | 亚洲成av | 一级片av | 色资源在线视频 | 亚洲在线| 五月婷婷亚洲 | 日韩一二区| 中文字幕日韩一区 | 欧美簧片 | 国产精品久久久久久久久久久久久久 | 午夜精品久久久久久久99黑人 | 久久极品| 超碰在线97国产 | 国产在线精品一区二区三区 | 国产 欧美 日韩 一区 | 日本成人在线播放 |