ADO.NET

 

 

ADO.NET классуудыг танилцуулга

ADO.NET нь санах ойд єгєгдлийн олонлогуудыг байгуулахыг зєвшєєрдєг объектын загвар юм. Та єгєгдлийн олонлогуудын єгєгдлийг кодоос, текст файлаас, exchange server-ээс, єгєгдлийн баазын системээс авч болно.

ADO.NET-д сурах зайлшгvй хэрэгтэй хэд хэдэн класс бий. Танд энэ бvх классуудын товч тайлбарлая.

DataSet - Энэ классыг санах ой дахь єгєгдлийн бааз гэж зvйрлэж болно. DataSet нь нэг болон тvvнээс дээш DataTable объектуудыг багтааж чаддаг ба тэдгээрийн хооронд relationship тогтоож чадна. Энэ классад жинхэнэ єгєгдлєєс уншсан єгєгдєл байрлах ба ямар нэгэн єєрчлєлт бvр нь тvvн рvv хийгдэж байдаг. ADO.NET-ийн єєр объектыг ашиглан єєрчлєлтийг єгєгдлийн бааз руу хадгална.

DataTable – Энэ класс нь єгєгдєл бvхий мєрvvдийг агуулж байдаг. Мєр болгон багануудаас бvрдэх ба багана болгон нэгэн тєрєл бvхий єгєгдлvvдийг агуулж байдаг.

DataView – Энэ класс нь онцлог шинжээр харагдах DataTable юм. Энэ объект нь DataTable объект дээр эрэмбэлэлтvvд, шvvлтvvрvvдийг хэрэглэж байдаг.

Connection - Энэ класс нь єгєгдлийн эхтэй (data source) холболт хийхэд хэрэглэгддэг. Энэ классад vндсэн OLE DB, SQL server гэсэн 2 тєрєл байна.

Command – Энэ класс нь SQL мэдэгдлvvдийг єгєгдлийн эх рvv буцаан дамжуулж байдаг. Та SQL болон stored procedure-уудыг ашиглан бvх єгєгдлийг сэргээх ба єєрчлєлт хийж чадна. Энэ классад єєрчлєлтvvдийг хадгалж чадах, єгєгдєл сэргээх method-ууд бий.

CommandBuilder - Энэ класс нь SELECT, INSERT, UPDATE, DELETE command oбъектуудыг байгуулахад хэрэглэгддэг.

DataAdapter - Энэ класс нь DataSet эсвэл DataTable-ийг єгєгдлийн баазаас єгєгдлєєр дvvргэхэд хэрэглэгддэг. DataAdapter нь єгєгдлийн баазтай холболт vvсгэх ба SQL мэдэгдэлд тохирох command oбъектыг байгуулж, єгєгдлийг сэргээн, DataSet эсвэл DataTable-ийг байгуулаад, єгєгдлийн баазаас салгагдана.

DataReader - Энэ класс нь єгєгдлийн эхээс єгєгдлийг хурдан уншиж чадах ба forward-only, зєвхєн уншигдах курсор юм. Энэ класс нь DataGrid-vvдийг, ListBox-уудыг, ComboBox-уудыг дvvргэхэд хамгийн тохиромжтой.

 

ADO классуудыг хэрэглэх нь

 

Та дээрхээс .NET ийн зарим классууд яаж єгєгдлийг дамжуулж буйг, DataSet-vvд нь хэрхэн хэрэглэгддэгийг харж байна. DataAdapter-ууд нь SQL Server, Oracle, Access зэрэг єгєгдєл хадгалагч (Data Store)-аас єгєгдєл уншин DataSet-vvдийг дvvргэдэг. DataSet нь байгуулагдсан бол энэ нь WinForm, WebForm, Web Service эсвэл бvр єєр ямар нэгэн Java дээр бичигдсэн Unix сервэр дээр ажиллах вэб хуудасанд ч хэрэглэгдэж болно.

 

OleDb ба SqlClient

Энэ 2 нь ялгаатай шинж бvхий Connection, Command, CommandBuilder, DataAdapter, DataReader классуудтай. OleDb нь OLE DB provider-уудыг хэрэглэн єгєгдлийн эхvvдийг авахад зориулагдсан. Энэ 2 нь єєр єєр NameSpace-д байрлана.

Доор OleDb классуудыг хэрхэн тодорхойлохыг жишээ болгон бичье.

   Dim oConn As OleDb.OleDbConnection
   Dim oCmd As OleDb.OleDbCommand
   Dim oBuild As OleDb.OleDbCommandBuilder
   Dim oDA As OleDb.OleDb.OleDbDataAdapter
   Dim oDR As OleDb.OleDb.OleDbDataReader
Доор Sql классуудыг хэрхэн тодорхойлохыг жишээ болгон бичье.
   Dim oConn As SqlClient.SqlConnection
   Dim oCmd As SqlClient.SqlCommand
   Dim oBuild As SqlClient.SqlCommandBuilder
   Dim oDA As SqlClient.SqlDataAdapter
   Dim oDR As SqlClient.SqlDataReader

 

ADO.NET-г ADO-той харьцуулах нь

 

ADO.NET нь ADO-гийн сайжруулсан, боловсронгуй хувилбар юм. Энэ 2 объект загварын зарим vндсэн єєрчлєлт байдаг боловч эцсийн vр дvн нь ижил хэвээр билээ. Танд єгєгдєл хадгалах, єгєгдєл сэргээх, єгєгдєлд засвар хийх объект загвар хэрэгтэй билээ. ADO нь танд тvvнийг RecordSet-vvдийн тусламжтай гvйцэтгэхийг зєвшєєрдєг бол ADO.NET нь танд тvvнийг DataSet-д болон бусад объектын тусламжтай хийхийг зєвшєєрдєг.

ADO.NET ба ADO-гийн vндсэн ялгаа нь ADO.NET нь єгєгдлийн vл холбогдсон (disconnected) хэлбэр, ADO нь холбогдсон тєрлийн объект загвар гэдэгт байгаа билээ.

 

DataTable класс | дээшээ | Connection ба Command Объектууд
нvvр хуудас