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

教你使用ADO.NET ADOX得到并改變Schema信息

開(kāi)發(fā) 后端
ADOX是ADO.NET的一個(gè)擴(kuò)展,這里將詳細(xì)的介紹ADO.NET ADOX的運(yùn)用,希望大家通過(guò)看本文會(huì)有技術(shù)上的提高。

經(jīng)過(guò)長(zhǎng)時(shí)間學(xué)習(xí)ADO.NET ADOX,于是和大家分享一下關(guān)于ADO.NET ADOX方面的知識(shí),看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。ADO.NET并沒(méi)有為得到并管理schema信息提供一個(gè)完全的對(duì)象模式。你應(yīng)該用ActiveX Data Objects Extensions for Data Definition Language and Security (ADOX)或用每個(gè)數(shù)據(jù)庫(kù)提供的本地功能來(lái)得到并改變Schema信息。ADOX是ADO對(duì)象的一個(gè)擴(kuò)展,它包括用來(lái)創(chuàng)建和修改Schema的對(duì)象。你可以編寫適用于各種數(shù)據(jù)源的代碼(不管本地語(yǔ)法有什么不同),因?yàn)锳DO.NET ADOX是管理schema的一個(gè)基于對(duì)象的方法。

#T#你可以用一個(gè)data reader對(duì)象來(lái)讀(不是設(shè)置)簡(jiǎn)單的schema信息。所有的data reader類(OleDbDataReader、SqlDataReader、OracleDataReader)都提供了一個(gè)GetSchemaTable方法,該方法可以讀取查詢到的列的元數(shù)據(jù)信息。GetSchemaTable返回一個(gè)DataTable對(duì)象(格式是每列一行)和固定的一組包含信息的列。返回的元數(shù)據(jù)可以分成三類:列元數(shù)據(jù)、數(shù)據(jù)庫(kù)特征和列屬性。返回的列可以是AllowDBNull、 IsAutoIncrement、ColumnName、IsExpression、IsReadonly和NumericPrecision等。在 MSDN資料中有完整的列表(見(jiàn)附加資源)。

在調(diào)用ExecuteReader時(shí),如果你執(zhí)行KeyInfo命令,那么GetSchemaTable方法就可以返回更精確的數(shù)據(jù)。你可以將KeyInfo行為同缺省的行為結(jié)合起來(lái),執(zhí)行一個(gè)單獨(dú)的命令并得到schema和數(shù)據(jù):

  1. reader = cmd.ExecuteReader( _  
  2. CommandBehavior.KeyInfo Or _  
  3. CommandBehavior.CloseConnection) 

只有執(zhí)行KeyInfo,IsKey、BaseTableName、IsAliased、IsExpression和IsHidden字段的值才能被正確返回。如果執(zhí)行KeyInfo,關(guān)鍵的列(如果有)通常是添加在結(jié)果集的底部的,但不給它們返回?cái)?shù)據(jù)。

盡可能用預(yù)先排序的數(shù)據(jù)

ADO.NET對(duì)象模式使我們可以很容易地實(shí)現(xiàn)排序。你可以創(chuàng)建一個(gè)DataView對(duì)象并設(shè)置其Sort屬性;ADO.net runtime查看新的排序表達(dá)式并為視圖重編索引。該步驟是在內(nèi)存中實(shí)現(xiàn)的,但速度并不快。排序的花費(fèi)很高,更重要的是,它并不是個(gè)線性操作(linear operation)。對(duì)一組數(shù)據(jù)進(jìn)行排序需要n*log(n)的計(jì)算成本,就是說(shuō),隨著需要排序的條目數(shù)量的增加,直線增加的成本是很大的。因此,你應(yīng)該限制應(yīng)用程序中的排序,盡可能地運(yùn)用預(yù)先排序的數(shù)據(jù)。在Web應(yīng)用程序中,動(dòng)態(tài)排序?qū)π阅艿挠绊懯窍喈?dāng)大的。既然如此,你就應(yīng)該設(shè)計(jì)應(yīng)用程序,限制對(duì)動(dòng)態(tài)排序的需求,并依賴在數(shù)據(jù)庫(kù)服務(wù)器中寫死的算法。除非你在用應(yīng)用程序的一個(gè)可以使復(fù)雜性低于n*log(n)極限的特殊的功能,否則避免運(yùn)用手工排序算法,因?yàn)檫@種算法可能比系統(tǒng)中的算法更糟

責(zé)任編輯:田樹(shù) 來(lái)源: 博客
相關(guān)推薦

2009-11-13 09:30:28

2009-12-28 15:11:36

ADO.NET專家

2009-11-11 14:04:14

ADO.NET連接池

2009-11-03 14:22:10

ADO.NET Exc

2009-11-13 14:29:13

ADO.NET Mer

2009-11-12 13:26:56

使用ADO.NET參數(shù)

2009-11-12 10:06:01

ADO.NET讀取數(shù)據(jù)

2009-11-13 10:10:07

2009-11-13 14:22:11

ADO.NET Dat

2009-12-25 10:25:59

2009-11-13 14:38:45

ADO.NET Dat

2009-12-21 14:50:47

ADO.NET優(yōu)化

2009-12-21 16:53:06

ADO.NET使用說(shuō)明

2009-12-31 13:50:46

ADO.NET模型

2009-08-21 16:35:08

使用C#結(jié)合ADO.N

2009-10-29 10:34:31

ADO.NET使用技巧

2009-11-12 10:15:37

ADO.NET使用

2009-12-29 10:36:24

ADO.NET 工具

2009-12-22 16:35:11

ADO.NET控件

2009-12-22 15:20:25

ADO.NET功能
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 大象一区 | 成年男女免费视频网站 | 亚洲九色| 日本91av视频| 精品久久久久久一区二区 | 欧美日韩综合 | 精品国产一区二区三区久久久蜜月 | 亚洲一区二区免费看 | 女同videos另类| 在线国产一区 | 九九国产在线观看 | 亚洲成人在线网 | 日韩伦理电影免费在线观看 | 亚洲精品一级 | 久久久免费电影 | 日韩欧美国产精品一区二区三区 | 91偷拍精品一区二区三区 | 国产午夜精品理论片a大结局 | 欧洲一级黄 | 久久久久亚洲视频 | 性视频网| 日本久久一区二区三区 | 久久四虎| 天天操欧美 | 欧美视频免费 | 国产乱码精品一品二品 | 久久久91精品国产一区二区三区 | 欧美成人一区二区三区 | 国产精品国产成人国产三级 | 高清欧美性猛交xxxx黑人猛交 | 亚洲五码在线 | 天堂国产 | 欧美精品一区二区三区在线播放 | 久久久网 | 国产偷久久一级精品60部 | 夜夜操av| 国产成人亚洲精品自产在线 | 在线视频中文字幕 | 国产高清自拍视频在线观看 | 国产一区二区欧美 | 最新国产精品 |