ASP.NET - ডাটাবেস কানেকশন

ADO.NETও .NET ফ্রেমওয়ার্কের অংশ

ADO.NET-এর কাজ হল ডাটা এক্সেসকে হাতকরা। ADO.NET-এর মাধ্যমে, আপনি ডাটাবেসকে অপারেশন করতে পারেন。

আডো নেট কী?

  • ADO.NET .NET ফ্রেমওয়ার্কের অংশ
  • ADO.NET-এর মধ্যে একটি শ্রেণীর পদ্ধতি রয়েছে যা ডাটা এক্সেস করতে ব্যবহার করা হয়
  • ADO.NET সম্পূর্ণভাবে XML-ভিত্তিক
  • ADO.NET-এ রেকর্ডসেট অবজেক্ট নেই, এটি ADO-র থেকে ভিন্ন

ডাটাবেস কানেকশন তৈরি করা

আমরা পূর্বে ব্যবহার করা Northwind ডাটাবেসকে ব্যবহার করব

প্রথমে, নামস্পেস "System.Data.OleDb" ইম্পোর্ট করা হয়। আমরা এই নামস্পেসটি ইম্পোর্ট করব, যাতে মাইক্রোসফট এক্সেস এবং অন্যান্য OLE DB ডাটাবেস প্রদাতা কর্মকান্ড করতে পারি। আমরা Page_Load সাব-রুটিনে এই ডাটাবেসের কানেকশন তৈরি করব। আমরা dbconn ভেক্টর তৈরি করি, এবং এই ভেক্টরকে একটি OleDbConnection শ্রেণীর নতুন অবজেক্ট এক্সপ্রেস করি, যা একটি কানেকশন স্ট্রিং নিয়ে আসে যা OLE DB এবং ডাটাবেসের স্থান নির্দেশ করে। তারপর, আমরা এই ডাটাবেস কানেকশনটি খুলি:

<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
sub Page_Load
dim dbconn
dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb")")
dbconn.Open()
end sub
</script>

মন্তব্য:এই কানেকশন স্ট্রিংটি বিচ্ছিন্ন নয়, একটি নিরবচ্ছিন্ন কানেকশন স্ট্রিং হতে হবে!

ডাটাবেস কমান্ড তৈরি করা

ডাটাবেস থেকে কোন রেকর্ড ফেচ করতে, আমরা একটি dbcomm ভেক্টর তৈরি করব, এবং তাকে একটি নতুন OleDbCommand এক্সপ্রেস করি। OleDbCommand শ্রেণী ব্যবহার করা হয় যাতে ডাটাবেস টেবিলের SQL কোড প্রেরণ করা যায়:

<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
sub Page_Load
dim dbconn,sql,dbcomm
dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb")")
dbconn.Open()
sql="SELECT * FROM customers"
dbcomm=New OleDbCommand(sql,dbconn)
end sub
</script>

DataReader তৈরি করা

OleDbDataReader শ্রেণী ব্যবহার করা হয় যাতে ডাটা সোর্স থেকে রেকর্ড স্ট্রিম পড়া যায়। OleDbCommand অবজেক্টের ExecuteReader পদ্ধতির আহ্বান করে একটি DataReader তৈরি করা যায়:

<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
sub Page_Load
dim dbconn,sql,dbcomm,dbread
dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb")")
dbconn.Open()
sql="SELECT * FROM customers"
dbcomm=New OleDbCommand(sql,dbconn)
dbread=dbcomm.ExecuteReader()
end sub
</script>

একটি Repeater কন্ট্রোলের সাথে বাঁধাই করা

তারপর, আমরা এই DataReader-কে একটি Repeater কন্ট্রোলের সাথে বাঁধাই করি:

<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
sub Page_Load
dim dbconn,sql,dbcomm,dbread
dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb")")
dbconn.Open()
sql="SELECT * FROM customers"
dbcomm=New OleDbCommand(sql,dbconn)
dbread=dbcomm.ExecuteReader()
customers.DataSource=dbread
customers.DataBind()
dbread.Close()
dbconn.Close()
end sub
</script>
<html>
<body>
<form runat="server">
<asp:Repeater id="customers" runat="server">
<HeaderTemplate>
<table border="1" width="100%">
<tr>
<th>Companyname</th>
<th>Contactname</th>
<th>Address</th>
<th>City</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%#Container.DataItem("companyname")%></td>
<td><%#Container.DataItem("contactname")%></td>
<td><%#Container.DataItem("address")%></td>
<td><%#Container.DataItem("city")%></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</form>
</body>
</html>

এই উদাহরণ দেখান

ডাটাবেস কানেকশন বন্ধ করা

ডাটাবেস কানেকশন প্রাপ্ত হওয়ার জন্য কিনা না, হ্রাস করার জন্য DataReader এবং ডাটাবেস কানেকশনকে সর্বদা বন্ধ করার কথা করুন:

dbread.Close()
dbconn.Close()