تبلیغات
آموزشASP.NET - ذخیره و بازیابی داده توسط ADO.NET (بخش اول)
 
فردا روشن اسن به
آموزشASP.NET
صفحه نخست         تماس با مدیر         پست الکترونیک        RSS         ATOM
 
 

استفاده از ADO.NET ، امکان اتصال به منابع داده متفاوت ، بازیابی ، پردازش و بهنگام سازی داده ، فراهم می گردد . ADO.NET از XML به منظور  انتقال داده بین برنامه ها و منابع داده استفاده می نماید .ویژوال استودیو دات نت دارای امکانات متعددی به منظور دستیابی به بانک های اطلاعاتی (برخاسته از ADO.NET ) ، می باشد. پس از اتصال به یک بانک اطلاعاتی می توان با استفاده از مجموعه ای از اشیاء ، خصلت ها و متدها ، صرفنظر از نوع بانک اطلاعاتی ، عملیات مورد نظر خود در ارتباط با یک بانک اطلاعاتی را انجام داد. در این مقاله به بررسی  امکانات ویژوال استودیو دات نت به منظور اتصال به یک بانک اطلاعاتی و انجام عملیات متفاوتی همچون  خواندن ، تغییر و حذف رکوردهای موجود در یک بانک اطلاعاتی ، خواهیم پرداخت .

مبانی اولیه ADO.NET
به منظور دستیابی به داده در
ADO.NET
، سه لایه وجود دارد :

    • محل فیزیکی ذخیره سازی داده : لایه فوق می تواند یک بانک اطلاعاتی OLE ، یک بانک اطلاعاتی SQL و  یا یک فایل XML باشد .

    • ارائه دهنده داده : لایه فوق ، شامل شی Connection و اشیاء  Command بوده و تصویری از داده ها را در حافظه ایجاد می نماید.

    • Data set : لایه فوق ، رکوردهای بازیابی شده از یک منبع داده  را در خود نگهداری می نماید. یک Data Set شامل رکوردهائی از یک و یا چندین جدول می باشد .

    لایه ارائه دهنده داده ، واسطه بین محل ذخیره سازی داده و Data Set ، می باشد .Data Set مستقل از منبع داده است  .

    در ADO.NET از دو نوع Connection به منظور اتصال به یک بانک اطلاعاتی ( با توجه به نوع بانک اطلاعاتی )  استفاده می گردد :

    • شی OleDbConnection که از آن به منظور ارتباط به یک بانک اطلاعاتی محلی  استفاده می گردد. این نوع ارتباطات از شی OleDbDataAdapter به منظور اجرای دستورات و برگرداندن داده استفاده می نمایند .

    • شی SqlDbConnection که از آن به منظورارتباط  به یک بانک اطلاعاتی سرویس دهنده ، استفاده می گردد.این نوع ارتباطات از شی SqlDbDataAdapter به منظور اجرای دستورات و برگرداندن داده استفاده می نمایند .

    علاوه بر موارد فوق ، امکان دستیابی مستقیم به فایل های XML با استفاده از متدهای  ReadXML و WriteXML مربوط به شی DataSet ، نیز وجود دارد.
    اشیاء ، خصلت ها و متدهای حمایت شده توسط
    ADO.NET توسط سه namespace ارائه می گردد :

    • System.Data : در این namespace کلاس ها ، نوع ها و سرویس های لازم به منظور ایجاد و دستیابی به data set و اشیاء زیر مجموعه آن وجود دارد .

    • System.Data.SqlClient : در این namespace کلاس ها و نوع های لازم به منظور دستیابی به بانک های اطلاعاتی SQL Server ، وجود دارد.

    • System.Data.OleDb : در این namespace کلاس ها و نوع های لازم به منظور دستیابی به بانک های اطلاعاتی OLE ، وجود دارد . 

    در زمان دستیابی و استفاده از بانک های اطلاعاتی ( از طریق کد نوشته شده ) ، می بایست از عبارت Imports در ابتدای ماژول استفاده گردد .

    VB.NET

    Imports System.Data
    Imports System.Data.SqlClient    'For SQL database Connection
    Imports  System.Data.OleDb        'For OLE DB database Connection

    به منظور دستیابی داده از طریق ADO.NET ، مراحل زیر را دنبال می نمائیم :

    • ایجاد ارتباط با بانک اطلاعاتی توسط  یک شی Connection

    • فراخوانی یک command به منظور ایجاد یک Dataset با استفاده از یک شی adapter

    • استفاده از شی DataSet  (در کد نوشته شده ) ، به منظورنمایش داده و یا تغییر آیتم های موجود در بانک اطلاعاتی

    • فراخوانی یک Command به منظور بهنگام سازی بانک اطلاعاتی از طریق DataSet با استفاده از یک شی adapter

    • غیر فعال نمودن ( Close ) ارتباط ایجاد شده با بانک اطلاعاتی در صورتیکه ارتباط با بانک اطلاعاتی توسط متد Open فعال شده باشد .

    در ادامه به تشریح هر یک از مراحل فوق خواهیم پرداخت .

    ارتباط با بانک اطلاعاتی
    با استفاده از
    Server Explorer در ویژوال استودیو دات نت ، امکان ایجاد یک ارتباط با بانک اطلاعاتی فراهم می گردد. در این رابطه مراحل زیر را دنبال می نمائیم (در حالت  Design ) : 

    • فعال نمودن Server Explorer ( از طریق  View|Server Explorer )

    • در Server Explorer ، گزینه Connect To Database را انتخاب می نمائیم .در ادامه جعبه محاوره ای DataLink Properties  نمایش داده می شود.

     

    •  از طریق Provider Tab ، نوع بانک اطلاعاتی را مشخص می نمائیم . به صورت پیش فرض  ، OLE DB Provider for SQL Server  انتخاب شده است . در صورتیکه بانک اطلاعاتی تحت SQL Server اجراء می گردد ، انتخاب پیش فرض درست می باشد . به منظور دستیابی به یک نوع دیگر بانک اطلاعاتی ، می بایست Provider  مربوطه را انتخاب نمود. مثلا" برای دستیابی به یک بانک اطلاعاتی اکسس ، Micosoft Jet 4.0 OLE DB انتخاب می گردد .

    • از طریق Connection Tab ، بانک اطلاعاتی مورد نظری که قصد برقراری ارتباط با آن وجود دارد را انتخاب می نمائیم  

    • پس از اعمال تنظیمات  لازم  با کلیک نمودن بر روی دکمه Test Connection ، می توان از صحت تنظیمات انجام شده ، اطمینان حاصل نمود .پس از تست موفقیت آمیز ارتباط ایجاد شده با بانک اطلاعاتی ، ویژوال استودیو دات نت ، ارتباط ایجاد شده را به Server Explorer اضافه می نماید .

    •  با کلیک نمودن بر روی علامت "+" ، آیتم های مربوط به بانک اطلاعاتی نمایش داده خواهند شد . برای مشاهده جداول ، می توان آیتم های مربوطه را تحت Data Connection فعال و در ادامه از طریق Table و فعال نمودن آن ، جداول مربوط به بانک اطلاعاتی را مشاهده نمود.

    • برای افزودن یک آیتم به برنامه ، از طریق Sever Explorer آن را انتخاب و بر روی فرم وب  قرار می دهیم . در مواردی که یک جدول بر روی فرم وب مستقر می گردد ، ویژوال استودیو دات نت ، اشیاء Connection و adapter را  به همراه تنظیمات مناسب ، ایجاد می نماید.

    ایجاد یک Data Set
    با استفاده از اشیاء
    Connection و Adapter ( ایجاد شده در بخش قبل )، می توان یک Data set را ایجاد نمود. برای ایجاد یک Data set پس از استقرار در حالت Design ، مراحل زیر را دنبال می نمائیم .

    • بر روی شی  adapter کلیک سمت راست نموده و گزینه Generate Dataset را انتخاب می نمائیم . ویژوال استودیو در ادامه ، جعبه محاوره ای Generate Dataset را نمایش خواهد داد .

    • جداول مورد نظر را برای اضافه نمودن به Data set انتخاب کرده و در ادامه بر روی دکمه Ok کلیک می نمائیم . ویژوال استودیو یک Data set جدید راایجاد و آن را به فرم وب اضافه می نماید .

    • برای مشاهده داده موجود در Data set ، ( در حالت Desgin ) برروی شی DataSet کلیک سمت راست نموده و گزینه View Schema را انتخاب می نمائیم . در ادامه Data Set در پنجره XML Designer نمایش داده می شود .

    نمایش یک Data set
    برای نمایش یک
    Data Set بر روی یک فرم وب و در زمان اجراء ، مراحل زیر را دنبال می نمائیم :

    • افزودن یک کنترل بر روی فرم وب به منظور نمایش  داده . مثلا" می توان یک کنترل DataGrid را به فرم وب اضافه نمود .

    • انتخاب Data set  به عنوان منبع داده برای کنترل . مثلا" برای کنترل DataGrid ، گزینه Property Builder را از طریق پنجره Properties انتخاب  و DataSource آن را به شی Dataset نسبت داده و خصلت DataMember را به یک جدول در Data Set نسبت می دهیم .

    • ستون های مورد نظر برای نمایش در کنترل را مشخص می نمائیم . برای کنترل DataGrid ، برروی آیتم Columns کلیک نموده ( از طریق جعبه محاوره ای Properties ) و گزینه Create Columns Automaticlly At Run Time را غیر فعال نموده ( Deselect ) و در ادامه ستون های مورد نظر برای نمایش را از طریق Available Columns list ، اضافه می نمائیم .( در این مثال ، ستون های نام و آدرس پست الکترونیکی اضافه شده اند ) . 

    • اضافه نمودن کد لازم در روتین مربوط به رویداد Page_Load به منظور پر نمودن Data set از طریق Data Adapter و  نسبت دهی داده از طریق شی DataSet برای کنترل . مثلا" کد زیر باعث نمایش داده در کنترل DataGrid ( ایجاد شده در مرحله قبل ) می نماید .

    VB.NET

    Private Sub Page_Load (ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Mybase.Load
       SqlDataAdapter1.Fill ( SrcoDataSet11)
       DataGrid1.DataBind ( )
    End Sub

    • پس از اجرای برنامه و لود شدن صفحه ، Dataset  نمایش داده می شود .

    با توجه به این که پر نمودن Data set و نسبت دهی داده به کنترل DataGrid از طریق رویداد Page_Load انجام می شود ، ضرورتی به نگهداری اطلاعات وضعیت  برای کنترل DataGrid وجود نخواهد داشت . با مقداردهی خصلت  EnableViewState به False ، کارائی برنامه بهبود می یابد.

    تغییر رکوردها در یک بانک اطلاعاتی
    DataSet یک شی اصلی و مهم در ADO.NET بوده و هرگونه تغییرات شامل افزودن ، حذف و یا تغییر رکوردهای موجود در یک بانک اطلاعاتی عموما" از طریق شی فوق، انجام می شود . برای تغییر رکوردها از طریق یک DataSet مراحل زیر را دنبال می نمائیم .

    •  دستیابی به شی Dataset ( مشابه روشی که به آن اشاره گردید)

    •  تغییر DataSet

    • بهنگام سازی بانک اطلاعاتی از طریق DataSet توسط فراخوانی متد Update مربوط به شی Adapter

    از مجموعه های Tables,Rows و Columns برای دستیابی به داده موجود در یک DataSet استفاده می گردد . در بخش دوم این مقاله با نحوه استفاده از مجموعه های فوق به منظور ویرایش یک بانک اطلاعاتی ، آشنا خواهیم شد.

    asp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزشasp.netاموزش





نوع مطلب :
برچسب ها :
لینک های مرتبط :


پنجشنبه 23 شهریور 1396 04:56 ب.ظ
Nice post. I used to be checking constantly this blog and I'm inspired!
Extremely helpful information particularly the ultimate section :) I
take care of such information a lot. I was looking for this particular information for a very
lengthy time. Thanks and best of luck.
چهارشنبه 15 شهریور 1396 05:20 ب.ظ
Wow, this article is fastidious, my sister is analyzing these things,
thus I am going to convey her.
سه شنبه 6 تیر 1396 01:07 ق.ظ
Hey there, You've done an incredible job. I will certainly digg it and
in my opinion suggest to my friends. I'm sure they will be benefited from this website.
پنجشنبه 21 اردیبهشت 1396 10:42 ق.ظ
Hi there! I know this is kinda off topic but I'd figured I'd ask.
Would you be interested in trading links or maybe guest writing a blog article or vice-versa?
My blog goes over a lot of the same subjects as yours and I think we could greatly benefit from each other.
If you happen to be interested feel free to shoot me an e-mail.
I look forward to hearing from you! Fantastic blog by the
way!
 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر


درباره وبلاگ

سلام من آرش کاکاوند دانشجوی رشته کامپیوتر هستم و ورود شما رابه دنیای aspخوش امدمیگم.حتما نظر بدین تا من کارم رو بهتر ادامه بدم

مدیر وبلاگ : ارش کاکاوند
مطالب اخیر
نویسندگان
صفحات جانبی
نظرسنجی
شما کدام یک از برنامه های زیر را برای طراحی وب انتخاب می کنید؟








جستجو

آمار وبلاگ
کل بازدید :
بازدید امروز :
بازدید دیروز :
بازدید این ماه :
بازدید ماه قبل :
تعداد نویسندگان :
تعداد کل پست ها :
آخرین بازدید :
آخرین بروز رسانی :