1 上帝說,要連線資料庫,於是就有了sqlconnection (資料庫連線,配置連線字串等,使用者名稱密碼之類)
2 上帝說,要執行sql語句。於是就有了sqlcommand, 直接翻譯成sql命令。每個sqlcommand都有commandtext跟parameters 文字跟引數。填寫好這個命令,然後execute去執行。當然,要確保連線是open的才能執行。沒連線啥都幹不了。
3 上帝認為要有辦法讀取返回結果,於是便有了datareader.可以一條一條的讀取(read)直到最後一條。
4 上帝認為,把執行的結果找個地方存起來是好的。於是就有了dataset。這個東西很完美,基本上能存各種資料跟關係,比datareader方便很多。裡面有一個一個的dataview跟datatable.針對你的查詢結果,當然,datatable又可以從datarow一個一個的迴圈取得
5 上帝覺得上述步驟太複雜了 -_-!
於是便有了SqlDataAdapter (翻譯為SQL資料介面卡,介面卡模式) 它來封裝簡化了上述步驟。你只要new出來一個sqldataadapter,給他填上語句,直接fill到dataset就行了。 這樣你什麼都有了,只需要兩步!
6 微軟覺得,視覺化的東西是上帝喜歡的(使用者==上帝)
於是有了一個一個的SqlAdapter控制元件,DataSet控制元件,GridView控制元件....你可以直接拖到你的視窗(WinForm)或者頁面(Asp.Net Web Application等)設定幾個屬性,繫結即可。一行程式碼都不用寫。以至於普通網管跟文員都能成為潛在使用者。(雖然這種方式被“專業程式設計師”所不齒)
7建議:
如果喜歡效率的,用command+datareader自己處理(要小心別弄得更差哦)
如果喜歡方便的,就大量的使用Adapter+DataSet吧。畢竟繫結太節約時間了
如果就想顯示個資料而已...拖吧...反正你就是想給隔壁辦公室顯示個報表。幹嘛想那麼多。
sqlconnection,sqlcommand,sqldataadapter,sqldatareader,dataset都是做什麼用的?
轉載於:https://www.cnblogs.com/daban/archive/2012/08/27/2658630.html
相關文章
- UI設計和美工都是做什麼的?兩者有什麼區別?UI
- 你來講講AQS是什麼吧?都是怎麼用的?AQS
- 為什麼遊戲裡的閃避都是用“滾”的?遊戲
- 通用的底層埋點都是怎麼做的?
- 搞安全開發都是用什麼程式語言?
- 物聯網路卡是做什麼用的
- 視覺化資料用什麼軟體做,大資料視覺化是用什麼做的視覺化大資料
- Kali Linux是什麼?可以用來做什麼?Linux
- 什麼是TF簽名,為什麼現在普遍都是用testflight簽名!
- 室內導航圖用什麼做的?怎麼做室內導航?
- Java的日期類都是怎麼用的Java
- struct的tag到底可以用來做什麼?Struct
- SaaS,PaaS,IaaS都是什麼鬼
- 什麼是web前端?前端可以做什麼?html5有什麼用?Web前端HTML
- 優思學院|做質量管理有七大工具,都是什麼?
- 雲伺服器可以做什麼用?伺服器
- 我們用代理IP可以做什麼?
- 你用什麼軟體做筆記?筆記
- 伺服器做raid有什麼用伺服器AI
- 伺服器遷移中心SMC是什麼?SMC是做什麼用的伺服器
- Dockerfile中常用配置項的功能都是什麼?Docker
- JS/TS專案裡的Module都是什麼?JS
- UI設計和美工都是做什麼的?兩者區別這些教程告訴你UI
- TDD、BDD、ATDD都是什麼、有什麼區別?(下)
- TDD、BDD、ATDD都是什麼、有什麼區別?(上)
- make makefile cmake qmake都是什麼,有什麼區別?
- 塊儲存是做什麼用的,你知道嗎?
- Java是什麼_Java是做什麼的?Java
- Java、JavaScript、C、C++、PHP、Python都是用來開發什麼?JavaScriptC++PHPPython
- JavaEE是做什麼的?Java
- 雲伺服器做什麼用的?雲伺服器有什麼優勢伺服器
- BIOS、UEFI、Boot Loader都是些什麼iOSboot
- 跨鏈橋可以用來做什麼?
- 甘特圖用什麼軟體做方便?
- 為什麼那麼多的遊戲主角都是“啞巴”?遊戲
- Java3大框架的學習都是什麼Java框架
- CLR裡的MethodTable,MethodDescChunk,MethodDesc,FixUpPreCode都是什麼意思
- “這都是什麼隊友啊” 用歸因分析提升玩家體驗