میهن داکیومنت بزرگترین مرجع و مرکز دانلود پایان نامه (متن کامل فرمت ورد) فروش پایان نامه - خرید پایان نامه (کاردانی ، کارشناسی)همه رشته ها
حقوق اقتصاد مدیریت روانشناسی ریاضی تربیت بدنی کامپیوتر نرم افزار و سخت افزار عمران معماری برق صنایع غذایی علوم اجتماعی هنر علوم سیاسی فیزیک مکانیک حسابداری

تبلیغات کلیکی - افزایش رتبه گوگل

اگهی رایگان

دانلود مقاله مفاهیم ویژوال بیسیک


کد محصول : 10001089 نوع فایل : word تعداد صفحات : 42 صفحه قیمت محصول : 5000 تومان تعداد بازدید 929

فهرست مطالب و صفحات نخست


مفاهیم ویژوال بیسیک

ویژوال بیسیک به شما این امکان رو می ده که یک برنامه تحت ویندوز رو، تنها با کشیدن و انداختن چند کنترل بر روی فرمی که از پیش برای شما آماده شده، و تنها با نوشتن چند قطعه کد کوچک برای کارهایی که از ویژوال بیسیک می خواهید انجام بده، بسازید. خوب، از این بهتر دیگه چی می خواید؟ حالا شاید این سوال برای شما پیش بیاد که کنترل اصلاً چیه؟ ببینید، به هر شیئی که شما می تونید روی فرم قرار بدید و از اون برای پیشبرد کارهاتون استفاده کنید، کنترل میگن(البته در سطح خیلی پایین شرح دادم، امیدوارم که خوب منظورم رو فهمیده باشید). مثلاً می تونید برای ویژوال بیسیک معین کنید که وقتی که مثلاً روی یک دکمه فرمان (Comman Button) کلیک میشه، چه کاری رو انجام بده. به زبان ساده تر، به اشیائی که شما اغلب تو محیط ویندوز می بینید، مثل دکمه ها، منو ها، جعبه متن ها(تکست باکس ها) و ... کنترل می گن. کنترل ها، در ویژوال بیسیک، دو گونه هستند، 1- کنترل هایی که در زمان اجرا قابل روئیت هستن (Visual Controls)، و کنترل هایی که روی فرم قرار داده می شن ولی قابل دیدار نیستن و فقط تاثیر اون ها بر برنامه دیده میشه (Non-Visual Controls).
به این نوع برنامه نویسی، رویداد گرا (Event-Driven) میگن. چرا که هر برنامه ویژوال بیسیک از تعداد زیادی از خط کدهایی تشکیل شده که به برنامه میگن که وقتی فلان اتفاق افتاد، زبان برنامه نویسی در مقابل اون چه واکنشی انجام بده. البته وقتی که برنامه در حال نوشتنه، برنامه نویس نمی دونه که کی ممکنه مثلاً یه کاربر یه دکمه رو فشار بده، چون این رو دیگه خود ویژوال بیسیک معلوم می کنه و مثل برنامه نویسی سنتی، برنامه نویس مجبور نیست تمام عملیات برنامه رو، مثل مثال بالا، کنترل کنه. این شیوه برنامه نویسی رو که برنامه از بالا خونده می شه و دستور ها تک به تک اجرا می شن (مثل زبان سی)، و برنامه از بالا به سمت پایین در حال حرکته، برنامه نویسی بالا به پایین میگن که البته این نوع برنامه نویسی با عرضه زبان هایی چون ویژوال بیسیک، منسوخ شده. زیاد درگیر این مسئله نشین. برگردیم به بحث اصلی: من در بخش های دیگه قصد دارم که این شیوه برنامه نویسی یعنی رویدادگرا رو با ارائه چندین مثال در طول تدریس شرح بدم. خوب، درس اول رو از اساس برنامه نویسی، و با تشریح مفهیم اولیه برنامه نویسی، و به یاری خدا، شروع می کنیم:
 
مقدمه:

          چرا ويژوال بيسيك؟ شايد اين اولين سوالي باشد كه براي هركسي بوجود مي آيد چرا با وجود زبان هاي برنامه نويسي مثل ويژوال C ++ ، دلفي، .... درمحيط Windows ما بايد به سراغ ويژوال بيسيك برويم. بهتر كه براي جواب دادن به اين سوال ،  ابتداً يك سري از مطالب را براي يكدبگر روشن كنيم،

          بخاطر برداشتي از زبان Basic داريم كه در محيط DOS بيشتربه بچه هاي مدرسه آموزش داده مي شد و زباني ، كاملا آموزشي كاملا ابتدايي بود برداشتي غيرمنصفانه نسبت به ويژوال بيسيك داريم (خود من هم ابتداي كارهمين ديدگاه را نسبت به اين زبان برنامه نويسي داشتم) اما اين زبان با وجود به يدك كشيدن نام Basic ولي زباني متفاوت با بيسيك كه شما احتمالاً با آن آشنايي داريد مي باشد. اما در زبان ويژوال بيسيك بجز يك سري ازدستورهاي قديمي Basic بقيه دستورها جديد هستند. واين زبان با توانايي بكارگيري تمامي ابزارهاي موجود در كتابخانه Windows و تمامي برنامه هاي ديگر ميتواند درعين سادگي كه نسبت به زبانهايي مثل Visual C++) VC) دارد. همان كارها را انجام دهد(خالي از لطف نيست كه ذكر كنيم كه مي توان انواع برنامه هاي كاربردي (Utility) ، بازي ها حتي به شكل سه بعدي و برنامه هاي سندي (Application) و يا برنامه هاي قابل اجرا در شبكه ها و اينترنت را توليد نمود.). البته بايد اين نكته را هم ذكر كرد كه زبان VC براي حرفه اي ها و با توجه به سرعتي كه دارد براي كارهاي پيچيده رياضي به كار مي رود. ولي خوب در عوض زبان VB (معمولا كاربران كامپيوتر با Script هاي آن كه يكي از رقباي Java Script مي باشد و يا دوستداران اينترنت علاوه بر  ScriptباActiveX  ها كه براي اولين بار توسط VB عرضه شد را مي شناسند) هر دو مقوله قدرت و سرعت را با هم دارا مي باشد.

         VB يكي ديگر از تفاوتهايي كه با جد خودBasic  داشته است سيستم اجراي برنامه هاي ابجاد شده با اين زبان مي باشد كه جد آن با Interpreter (مفسر) كار مي كرد يعني برنامه را خط به خط اجرا مي كرد ولي ويژوال بيسيك مجهز به هر دو سيستم مي باشد يعني هم مفسر دارد هم كامپايلركه باز هم اين يكي از تفاوتهاي عمده آن نسبت  Basicمي باشد.

        حال نوبت به پاسخ گويي به اين سوال مي رسد كه چرا Visual  به ما قبل Basic افزوده شده است؟خوب من سعي مي كنم كه به اين سوال پاسخ بدم ولي اگر كار ياد گيري VB را  دنبال كنيد و قبلا در محيط DOS برنامه نوشته باشيد خودتان دليل افزوده شدن اين كلمه به ما قبل Basic آگاه مي شويد. ولي اگر Visual را در فرهنگ لغات انگليسي به فارسي نگاه كنيد به معناي بصري ميباشد يعني چيزي كه با چشم سر وكار دارد خوب اين دقيقا همان چيزي است كه ما از زمان متولد شدن ويندوز از ان استفاده مي كنيم رابطه هاي گرافيكي (GUI ها ) خوب ، پس به زبانها يي كه برنامه ها يي بدين گونه تهيه مي كنند بايد بصري گفته شود چون ديگر از آن محيط خشك و بي روح DOS ديگر خبري نيست.

          خوب، فكر كنم كه تا به اينجا توانسته باشيد تصميم خود را مبني به اينكه آيا مي خواهيد VB ياد بگيريد يا چيز ديگري را گرفته باشيد و من هم توانسته باشم كمي در مورد علت انتخاب VB توضيحاتي داده باشم..ولي اكنون تصميم به اين دارم كه روند و سيستم آموزشي كه قرار است با آن روند پيش بروم را بازگو كنم ما اين مباحث را به گونه هايي مي نويسم كه قابل استفاده براي همه (مبتديان و بالاتر ) وجود داشته باشد. خواندن اين سه بخش را به ويژه به مبتديان  توصيه مي كنم.

           البته بايد به اين نكته نيز اشاره كنم كه ما تا حدي متوسط با شما پيش مي رويم وبقيه آن با خود شما مي باشد. چون در آن موقع شما بايد تصميم بگيريدمي خوا هيد با VB چه كنيد و به دنبال آن شاخه خاص مي رويد سه بخشي كه ما سعي بر پوشش آن داريم عبارتند از:

اساس برنامه برنامه نويسي :
                  -  مفاهیم اولیه برنامه نویسی

-                       OOP (Object Oriented Programming )

مفاهيم كلي (Object ,Event ,Property ,method,... )
محيط و ابزارهاي VB
انواع داده ها در VB
دستورات پايه در VB
شي ها و كنترل ها و روش استفاده از آنها (Object & Controls )
-                       Forms

-                       Label

-                       Textbox

-                       Command Button

-                       Picture Box

-                                                                                    Image

-                       Shape

-                       Line

-                       Frame

-                       Check Box

-                       Option Button

-                       Combo Box

-                       List Box

-                       Hscroll Bar

-                       Vscroll Bar

-                       Timer

-                       Drive List Box

-                       Dir List Box

-                       File List Box

-                       Remote Data

-                       OLE

 
افزودن شي و كنترل ها ي جديد
-                                                                                    Microsoft Windows Common Control

چند روش در ايجاد  برنامه هاي كاربردي
 من در هر بخش سعي بر اين دارم كه با مثالها و تصاوير و ارائه كدهاي برنامه اقدام به آموزش زبان VB   كنم.

 نكات:
زبان VB6  در سه نسخه توسط شركت ماكروسافت ارائه شده است كه به ترتيب Learning ، Professional  ، Enterprise مي باشد كه به ترتيب براي آموزش ، اهداف حرفه اي و كاملترين آن Enterprise با امكانات شبكه و اينترنت مي باشد من در اين مجموعه از دو نسخه آخر استفاده مي كنم و به شما Enterprise را هم توصيه مي كنم.
حداقل سيستم مورد نياز توصيه شده توسط خود شركت ماكروسافت براي نصب Visual Basic (VB)  عبارت است از:
يك سيستم عامل ويندوز 95 و به بالا يا ويندوز NT 4 و به بالا
يك كامپيوتر 486DX/66 MHz  يا بالا تر (پروسسور پنتيوم و بالا تر توصيه شده است.
يك درايوCD-ROM
يك كارت VGA يا بالاتر كه توسط ويندوز پشتيباني شود.
16 MB  حافظه RAM براي ويندوز 95 و 32MB براي ويندوز NT
يك عدد Mouse
شما مي توانيد VB را به صورت مستقل و يا از بسته نرم افزاري Visual Studio   نصب نماييد.
•         Help ، در VB به صورت Online مي باشد و يا شما با نصب كتابخانه MSDN مي توانيد از Help استفاده كنيد.

•  ما در اين مجموعه فرض را بر اين مي گذاريم كه شما حداقل اطلاعات كافي در مورد ويندوز داريد و بر اين اساس به آموزش مطالب مي پردازيم.
به عنوان منابع بيشتر مي توانيد به كتاب هاي زير مراجعه نماييد :

دستيابی به بانک اطلاعاتی Access با استفاده از VB.NET
در اين مقاله قصد داريم به نحوه  بازيابی و نمايش اطلاعات موجود در يک بانک اطلاعاتی Access اشاره نمائيم . هدف از مقاله فوق ، پرداختن به تمامی رويکردهای موجود در اين زمينه نبوده و صرفا" به معرفی يکی از گزينه های موجود در اين زمينه اشاره خواهد شد. در اين راستا از تکنولوژی های ASP.NET ، ADO.NET و VB.NET استفاده خواهد شد . از کلاس های  OleDbConnection ، OleDbCommand و OleDbDataReader  مربوط به  ADO.NET  بمنظور انجام عمليات لازم در ارتباط با بانک اطلاعاتی ، از ASP.NET بمنظور ايجاد فرم وب و ارائه داده با استفاده از کنترل سرويس دهنده Table و از زبان VB.NET بمنظور نوشتن دستورالعمل های مورد نظر استفاده می گردد .
در ابتدا لازم است با سه کلاس ADO.NET که در ادامه از آنان استفاده خواهد شد ، بيشتر آشنا شويم :
•         کلاس OleDbConnection . شی فوق ، يک اتصال منحصر بفرد با يک منبع داده را  ايجاد می نمايد. در رابطه با يک بانک اطلاعاتی سرويس گيرنده / سرويس دهنده ، اين امر معادل يک اتصال شبکه به سرويس دهنده است . با توجه به قابليت های حمايت شده توسط native OLE DB Provider ، برخی از متدها و يا خصلت ها مربوط به شی OleDbConnection ممکن است در دسترس و قابل استفاده نباشد . زمانيکه نمونه ای  از OleDbConnection ايجاد می گردد ، تمامی خصلت های مربوطه ، مقدار اوليه خود را دارا خواهند بود . پس از اتمام عمليات موردنظر در ارتباط با بانک اطلاعاتی ،  می بايست با فراخوانی Close و يا Dispose اقدام به  غير فعال نمودن  اتصال ايجاد شده با بانک اطلاعاتی مربوطه نمود.
•         کلاس OleDbCommand .  يک عبارت SQL و يا Stored procedure را بمنظور اجراء در رابطه با يک منبع داده ارائه می نمايد. کلاس فوق از متدهای زير بمنظور اجرای دستورات در رابطه با يک منبع داده استفاده می نمايد.
 ExecuteReader  . متد فوق ، دستوراتی را اجراء می نمايد که خروجی آنان شامل سطرهائی خواهد بود.
 ExecuteNonQuery باعث اجرای دستوراتی نظير SQL INSERT,DELETE,UPDATE و SET خواهد شد .
 ExecuteScalar  . بازيابی صرفا" يک مقدار از يک بانک اطلاعاتی
•         کلاس OleDbDataReader . متد فوق ، امکان خواندن سطرهائی از داده موجود در يک منبع داده را فراهم می نمايد( فقط بسمت جلو)  . بمنظور ايجاد يک OleDbDataReader ، می بايست متد ExecuteReader مربوط به شی OleDbCommand فراخوانده شود. ماداميکه OleDbDataReader در حال استفاده است (اتصال مرتبط OleDbConnection ) ، عمليات ديگری را در ارتباط با OleDbConnection  نمی توان انجام داد .
 
امکانات مورد نياز
برای دنبال نمودن اين مقاله و اجرای نمونه مثالی که در ادامه بررسی می گردد ، به امکانات زير نياز خواهد بود :
•    نصب يکی از نسخه های ويندوز 2000 و يا نسخه ويندوز 2003
•    نصب IIS 
•     نصب فريمورک دات نت نسخه 1.0 ,يا نسخه 1.1
•    يک بانک اطلاعاتی نمونه اکسس نظير Northwind
ايجاد يک برنامه وب ASP.NET با استفاده از VB.NET
بمنظور ايجاد يک برنامه وب ASP.NET با استفاده از VB.NET مراحل زير را دنبال می نمائيم:
•     اجرای برنامه ويژوال استوديو دات نت
•    از طريق منوی File ، گزينه New و در ادامه Project را انتخاب نمائيد .
•     در جعبه محاوره ای New Project ، در بخش Project Types گزينه Visual Bacic Projects را انتخاب ( کليک ) و در ادامه ASP.NET Web Application  را انتخاب نمائيد.  
•     در فيلد Location ، بجای نام پيش فرض #WebApplication ، نام TestAccessDB را انتخاب نمائيد . در صورتيکه از يک سرويس دهنده محلی استفاده میگردد ، می توان  نام سرويس دهنده را http://localhost در نظر گرفت . بدين ترتيب در فيلد Location ، آدرس مربوطه بصورت زير نشان داده خواهد شد : http://localhost/TestAccessDB

 
ايجاد يک فرم وب نمونه 
در نمونه کد نوشته شده از کنترل سرويس دهنده Table مربوط به ASP.NET استفاده شده که بصورت پويا يک نمايش ساده از داده بازيابی شده را نشان خواهد داد. ASP.NET ، مجموعه متنوعی از کنترل های انعطاف پذير را ارائه که می توان از آنان با توجه به رويکردهای متفاوت در رابطه با نمايش داده استفاده نمود. بمنظور ايجاد يک فرم وب در پروژه ايجاد شده در مرحله قبل ، مراحل زير را دنبال می نمائيم :
•         اضافه نمودن يک فرم جديد با نام DataSample.aspx  به برنامه وب ASP.NET در ويژوال استوديو دات نت . بمنظور انجام خواسته فوق ، دو مرحله زير را دنبال می نمائيم :
مرحله يک : در Solution Explorer ، بر روی گره Project کليک سمت راست نموده و گزينه Add  و در ادامه گزينه Add Web Form انتخاب گردد.
مرحله دو : درفيلد Name ، نام DataSample.aspx را درج و در ادامه گزينه Open انتخاب گردد .
•         از طريق Toolbox مربوط به Web Forms Tab ، يک Table ASP.NET Server Control را انتخاب ( Drag ) و بر روی صفحه aspx . مستقر نمائيد ( در حالت Desgin view ) .
•         در Properties نام ID را به DisplayTable تغيير دهيد .
•         در Solution Explorer ، بر روی صفحه aspx . ، کليک سمت راست نموده و گزينه View Code را انتخاب نمائيد .
•          مرجع namespace زير را در بالاترين قسمت فايل کلاس code-behind وارد نمائيد
Imports System.Data.OleDb
•         کد زير را در ارتباط با رويداد  Page_load در نظر می گيريم :
Page_Load Event handler
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
استفاده از يک متغير رشته ای بمنظور ذخيره سازی Connectionstring'
  Dim connectString As String = "Provider=Microsoft.Jet.OLEDB.4.0;" &_
  "Data Source=C:\MyDB\NWIND.MDB"
ايجاد يک شی OleDbConnection و ارسال مقدار متغير ConnectionString '
  Dim cn As OleDbConnection = New OleDbConnection(connectString)
فعال نمودن Connection'
  cn.Open()
استفاده از يک متغير بمنظور ذخيره عبارت SQL'
  Dim selectString As String = "SELECT CustomerID, ContactName, Phone FROM Customers"
ايجاد يک شی OledbCommand'
در اين خط متغير عبارت SQL و شی OleDbConnection ، ارسال می گردد '
  Dim cmd As OleDbCommand = New OleDbCommand(selectString, cn)
ارسال CommandText به Connection و ايجاد يک OleDbDataReader '
OleDbDataReader  از نوع " فقط بسمت جلو " خواهد بود'
  Dim reader As OleDbDataReader = cmd.ExecuteReader()
تنظيم عرض جدول '  DisplayTable.Width = Unit.Percentage(90.0)
ايجاد يک سطر جديد برای اضافه نمودن عنوان جدول'
  Dim tableHeading As TableRow = New TableRow()
ايجاد و اضافه نمودن سلول های  شامل ستون Customer ID  '
  Dim customerIDHeading As TableHeaderCell = New TableHeaderCell()
  customerIDHeading.Text = "Customer ID"
  customerIDHeading.HorizontalAlign = HorizontalAlign.Left
  tableHeading.Cells.Add(customerIDHeading)
ايجاد و اضافه نمودن سلول های  شامل ستون Contact Name   '
   Dim contactNameHeading As TableHeaderCell = New TableHeaderCell()
   contactNameHeading.Text = "Contact Name"
   contactNameHeading.HorizontalAlign = HorizontalAlign.Left
   tableHeading.Cells.Add(contactNameHeading)

ايجاد و اضافه نمودن سلول های  شامل ستون Phone   '
    Dim phoneHeading As TableHeaderCell = New TableHeaderCell()
    phoneHeading.Text = "Phone"
    phoneHeading.HorizontalAlign = HorizontalAlign.Left
    tableHeading.Cells.Add(phoneHeading)
    DisplayTable.Rows.Add(tableHeading)
تکرار در بين داده انتخابی نتايج و افزودن داده برای هر يک از ستون های مورد نظر در جدول '
    While(reader.Read())
       Dim detailsRow As TableRow = New TableRow()
       Dim customerIDCell As TableCell = New TableCell()
       customerIDCell.Text = reader("CustomerID").ToString()
       detailsRow.Cells.Add(customerIDCell)
       Dim contactNameCell As TableCell = New TableCell()
       contactNameCell.Text = reader("ContactName").ToString()
       detailsRow.Cells.Add(contactNameCell)
       Dim phoneCell As TableCell = New TableCell()
       phoneCell.Text = reader("Phone").ToString()
       detailsRow.Cells.Add(phoneCell)
       DisplayTable.Rows.Add(detailsRow)
    End While
بستن  Connection'
    reader.Close()
   cn.Close()
End Sub
•         مقدار متغير ConnectString در ابتدای کد نوشته شده فوق را تغيير و آن را به محلی که بانک اطلاعاتی موجود است ، اشاره دهيد .
•          از طريق منوی File ، گزينه Save All را انتخاب تا فرم وب و ساير فايل های مرتبط با پروژه ، ذخيره گردد .
•         از طريق منوی Build ، گزينه Build Solution را بمنظور ايجاد پروژه ، فعال نمائيد.
•         در Solution Explorer ، بر روی DataSample.aspx کليک سمت راست و در ادامه گزينه View in Browser را انتخاب نمائيد . در ادامه صفحه در مرورگر نمايش و شامل داده موجود در بانک اطلاعاتی مربوطه است .

اشکالات و خطاهای احتمالی
درزمان اجراء ، ممکن است با خطائی مانند زير مواجه شويم :
The Microsoft Jet database engine cannot open the file 'C:\MyDB\NWIND.MDB'.
 It is already opened exclusively by another user, or you need permission to view its data.
•         خطای فوق ، اغلب بدليل عدم داشتن مجوز لازم بمنظور دستيابی به فايل ( فايل بانک اطلاعاتی با انشعاب mdb . ) می باشد . بصورت پيش فرض ،  ASP.NET تحت ASPNET account  در فريمورک دات نت نسخه يک و يا NetworkService  در فريمورک دات نت نسخه 1،1 اجراء می گردد.در اين رابطه لازم است تغييرات لازم در رابطه با  مجوز دستيابی به فايل mdb . و فولدری که شامل فايل است ، اعمال گردد .
•         از نصب عناصر مورد نياز Microsoft Jet database بر روی سيستم ، مطمئن گرديد. در صورتيکه MDAC 2.6 نصب شده باشد ( Microsoft Data Access Components 2.6) ، عناصر Jet را شامل نمی گردد . در چنين مواردی می بايست آخرين نسخه Jet 4.0 Service Pack ، بر روی سيستم نصب گردد.
دستيابی به بانک اطلاعاتی Access با استفاده از VB.NET
دستيابی به بانک اطلاعاتی Access با استفاده از VB.NET
در اين مقاله قصد داريم به نحوه  بازيابی و نمايش اطلاعات موجود در يک بانک اطلاعاتی Access اشاره نمائيم . هدف از مقاله فوق ، پرداختن به تمامی رويکردهای موجود در اين زمينه نبوده و صرفا" به معرفی يکی از گزينه های موجود در اين زمينه اشاره خواهد شد. در اين راستا از تکنولوژی های ASP.NET ، ADO.NET و VB.NET استفاده خواهد شد . از کلاس های  OleDbConnection ، OleDbCommand و OleDbDataReader  مربوط به  ADO.NET  بمنظور انجام عمليات لازم در ارتباط با بانک اطلاعاتی ، از ASP.NET بمنظور ايجاد فرم وب و ارائه داده با استفاده از کنترل سرويس دهنده Table و از زبان VB.NET بمنظور نوشتن دستورالعمل های مورد نظر استفاده می گردد .
در ابتدا لازم است با سه کلاس ADO.NET که در ادامه از آنان استفاده خواهد شد ، بيشتر آشنا شويم :
•         کلاس OleDbConnection . شی فوق ، يک اتصال منحصر بفرد با يک منبع داده را  ايجاد می نمايد. در رابطه با يک بانک اطلاعاتی سرويس گيرنده / سرويس دهنده ، اين امر معادل يک اتصال شبکه به سرويس دهنده است . با توجه به قابليت های حمايت شده توسط native OLE DB Provider ، برخی از متدها و يا خصلت ها مربوط به شی OleDbConnection ممکن است در دسترس و قابل استفاده نباشد . زمانيکه نمونه ای  از OleDbConnection ايجاد می گردد ، تمامی خصلت های مربوطه ، مقدار اوليه خود را دارا خواهند بود . پس از اتمام عمليات موردنظر در ارتباط با بانک اطلاعاتی ،  می بايست با فراخوانی Close و يا Dispose اقدام به  غير فعال نمودن  اتصال ايجاد شده با بانک اطلاعاتی مربوطه نمود.
•         کلاس OleDbCommand .  يک عبارت SQL و يا Stored procedure را بمنظور اجراء در رابطه با يک منبع داده ارائه می نمايد. کلاس فوق از متدهای زير بمنظور اجرای دستورات در رابطه با يک منبع داده استفاده می نمايد.
 ExecuteReader  . متد فوق ، دستوراتی را اجراء می نمايد که خروجی آنان شامل سطرهائی خواهد بود.
 ExecuteNonQuery . باعث اجرای دستوراتی نظير SQL
INSERT,DELETE,UPDATE و SET خواهد شد .

 ExecuteScalar  . بازيابی صرفا" يک مقدار از يک بانک اطلاعاتی
•         کلاس OleDbDataReader . متد فوق ، امکان خواندن سطرهائی از داده موجود در يک منبع داده را فراهم می نمايد( فقط بسمت جلو)  . بمنظور ايجاد يک OleDbDataReader ، می بايست متد ExecuteReader مربوط به شی OleDbCommand فراخوانده شود. ماداميکه OleDbDataReader در حال استفاده است (اتصال مرتبط OleDbConnection ) ، عمليات ديگری را در ارتباط با OleDbConnection  نمی توان انجام داد .

امکانات مورد نياز
برای دنبال نمودن اين مقاله و اجرای نمونه مثالی که در ادامه بررسی می گردد ، به امکانات زير نياز خواهد بود :
•    نصب يکی از نسخه های ويندوز 2000 و يا نسخه ويندوز 2003
•    نصب IIS 
•     نصب فريمورک دات نت نسخه 1.0 ,يا نسخه 1.1
•    يک بانک اطلاعاتی نمونه اکسس نظير Northwind
ايجاد يک برنامه وب ASP.NET با استفاده از VB.NET
بمنظور ايجاد يک برنامه وب ASP.NET با استفاده از VB.NET مراحل زير را دنبال می نمائيم:
•     اجرای برنامه ويژوال استوديو دات نت
•    از طريق منوی File ، گزينه New و در ادامه Project را انتخاب نمائيد .
•     در جعبه محاوره ای New Project ، در بخش Project Types گزينه Visual Bacic Projects را انتخاب ( کليک ) و در ادامه ASP.NET Web Application  را انتخاب نمائيد.  
•     در فيلد Location ، بجای نام پيش فرض #WebApplication ، نام TestAccessDB را انتخاب نمائيد . در صورتيکه از يک سرويس دهنده محلی استفاده میگردد ، می توان  نام سرويس دهنده را http://localhost در نظر گرفت . بدين ترتيب در فيلد Location ، آدرس مربوطه بصورت زير نشان داده خواهد شد : http://localhost/TestAccessDB

ايجاد يک فرم وب نمونه 
در نمونه کد نوشته شده از کنترل سرويس دهنده Table مربوط به ASP.NET استفاده شده که بصورت پويا يک نمايش ساده از داده بازيابی شده را نشان خواهد داد. ASP.NET ، مجموعه متنوعی از کنترل های انعطاف پذير را ارائه که می توان از آنان با توجه به رويکردهای متفاوت در رابطه با نمايش داده استفاده نمود. بمنظور ايجاد يک فرم وب در پروژه ايجاد شده در مرحله قبل ، مراحل زير را دنبال می نمائيم :
•         اضافه نمودن يک فرم جديد با نام DataSample.aspx  به برنامه وب ASP.NET در ويژوال استوديو دات نت . بمنظور انجام خواسته فوق ، دو مرحله زير را دنبال می نمائيم :
مرحله يک : در Solution Explorer ، بر روی گره Project کليک سمت راست نموده و گزينه Add  و در ادامه گزينه Add Web Form انتخاب گردد.
مرحله دو : درفيلد Name ، نام DataSample.aspx را درج و در ادامه گزينه Open انتخاب گردد .
•         از طريق Toolbox مربوط به Web Forms Tab ، يک Table ASP.NET Server Control را انتخاب ( Drag ) و بر روی صفحه aspx . مستقر نمائيد ( در حالت Desgin view ) .
•         در Properties نام ID را به DisplayTable تغيير دهيد .
•         در Solution Explorer ، بر روی صفحه aspx . ، کليک سمت راست نموده و گزينه View Code را انتخاب نمائيد .
•          مرجع namespace زير را در بالاترين قسمت فايل کلاس code-behind وارد نمائيد 
Imports System.Data.OleDb
•         کد زير را در ارتباط با رويداد  Page_load در نظر می گيريم :
Page_Load Event handler
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
استفاده از يک متغير رشته ای بمنظور ذخيره سازی Connectionstring'
  Dim connectString As String = "Provider=Microsoft.Jet.OLEDB.4.0;" &_
  "Data Source=C:\MyDB\NWIND.MDB"
ايجاد يک شی OleDbConnection و ارسال مقدار متغير ConnectionString '
  Dim cn As OleDbConnection = New OleDbConnection(connectString)
فعال نمودن Connection'   cn.Open()
 
استفاده از يک متغير بمنظور ذخيره عبارت SQL'
  Dim selectString As String = "SELECT CustomerID, ContactName, Phone FROM Customers"

ايجاد يک شی OledbCommand'
در اين خط متغير عبارت SQL و شی OleDbConnection ، ارسال می گردد '
  Dim cmd As OleDbCommand = New OleDbCommand(selectString, cn)
ارسال CommandText به Connection و ايجاد يک OleDbDataReader '
OleDbDataReader  از نوع " فقط بسمت جلو " خواهد بود'
  Dim reader As OleDbDataReader = cmd.ExecuteReader()

تنظيم عرض جدول '
  DisplayTable.Width = Unit.Percentage(90.0)
ايجاد يک سطر جديد برای اضافه نمودن عنوان جدول'
  Dim tableHeading As TableRow = New TableRow()
ايجاد و اضافه نمودن سلول های  شامل ستون Customer ID  '
  Dim customerIDHeading As TableHeaderCell = New
TableHeaderCell()
  customerIDHeading.Text = "Customer ID"
  customerIDHeading.HorizontalAlign = HorizontalAlign.Left
  tableHeading.Cells.Add(customerIDHeading)
ايجاد و اضافه نمودن سلول های  شامل ستون Contact Name   '
   Dim contactNameHeading As TableHeaderCell = New TableHeaderCell()
   contactNameHeading.Text = "Contact Name"
   contactNameHeading.HorizontalAlign = HorizontalAlign.Left
   tableHeading.Cells.Add(contactNameHeading)
ايجاد و اضافه نمودن سلول های  شامل ستون Phone   '
    Dim phoneHeading As TableHeaderCell = New TableHeaderCell()
    phoneHeading.Text = "Phone"
    phoneHeading.HorizontalAlign = HorizontalAlign.Left
    tableHeading.Cells.Add(phoneHeading)
    DisplayTable.Rows.Add(tableHeading)
تکرار در بين داده انتخابی نتايج و افزودن داده برای هر يک از ستون های مورد نظر در جدول '
    While(reader.Read())
       Dim detailsRow As TableRow = New TableRow()
       Dim customerIDCell As TableCell = New TableCell()
       customerIDCell.Text = reader("CustomerID").ToString()
       detailsRow.Cells.Add(customerIDCell)
       Dim contactNameCell As TableCell = New TableCell()
       contactNameCell.Text = reader("ContactName").ToString()
       detailsRow.Cells.Add(contactNameCell)
       Dim phoneCell As TableCell = New TableCell()
       phoneCell.Text = reader("Phone").ToString()
       detailsRow.Cells.Add(phoneCell)
       DisplayTable.Rows.Add(detailsRow)
    End While
بستن  Connection'
    reader.Close()
   cn.Close()
End Sub
•         مقدار متغير ConnectString در ابتدای کد نوشته شده فوق را تغيير و آن را به محلی که بانک اطلاعاتی موجود است ، اشاره دهيد .
•          از طريق منوی File ، گزينه Save All را انتخاب تا فرم وب و ساير فايل های مرتبط با پروژه ، ذخيره گردد .
•         از طريق منوی Build ، گزينه Build Solution را بمنظور ايجاد پروژه ، فعال نمائيد.
•         در Solution Explorer ، بر روی DataSample.aspx کليک سمت راست و در ادامه گزينه View in Browser را انتخاب نمائيد . در ادامه صفحه در مرورگر نمايش و شامل داده موجود در بانک اطلاعاتی مربوطه است .

اشکالات و خطاهای احتمالی
درزمان اجراء ، ممکن است با خطائی مانند زير مواجه شويم :
The Microsoft Jet database engine cannot open the file 'C:\MyDB\NWIND.MDB'.
 It is already opened exclusively by another user, or you need permission to view its data.
•         خطای فوق ، اغلب بدليل عدم داشتن مجوز لازم بمنظور دستيابی به فايل ( فايل بانک اطلاعاتی با انشعاب mdb . ) می باشد . بصورت پيش فرض ،  ASP.NET تحت ASPNET account  در فريمورک دات نت نسخه يک و يا NetworkService  در فريمورک دات نت نسخه 1،1 اجراء می گردد.در اين رابطه لازم است تغييرات لازم در رابطه با  مجوز دستيابی به فايل mdb . و فولدری که شامل فايل است ، اعمال گردد .
•         از نصب عناصر مورد نياز Microsoft Jet database بر روی سيستم ، مطمئن گرديد. در صورتيکه MDAC 2.6 نصب شده باشد ( Microsoft Data Access Components 2.6) ، عناصر Jet را شامل نمی گردد . در چنين مواردی می بايست آخرين نسخه Jet 4.0 Service Pack ، بر روی سيستم نصب گردد.

انواع داده ای در Visual Basic.NET
برای تعريف يک متغير در ويژوال بيسيک دات نت از عبارت Dim استفاده می شود. برای مثال چمله زير يک متغير جديد به نام myVar تعريف می کند:
Dim myVar
هنگامی که يک متغير مانند فوق بدون در نظر گرفتن نوع آن تعريف شود، آن متغير بعنوان يک شئ (Object) در نظر گرفته می شود. يک متغير از نوع شئ در دات نت می تواند شامل انواع داده از قبيل رشته، عدد يا انواع پيچيده تر مانند کلاس باشد.
اغلب نيازی نيست که از متغيرهای از نوع شئ در برنامه استفاده شود چرا که اين متغيرها باعث کاهش کارآيی و سرعت برنامه می شود. هنگامی که از يک متغير از نوع شئ استفاده شود، نوع مناسب آن متغير در زمان اجرا تشخيص داده می شود و اين باعث کندی می شود. بنابراين بهتر است که نوع داده را از ابتدا مشخص کنيم.
جهت مشخص نمودن نوع داده از کلمه کليدی As استفاده می کنيم. بعنوان مثال يک متغير از نوع رشته بصورت زير تعريف می شود: Dim myVar As String
مجموعه دات نت انواع داده ای زير را پشتيبانی می کند:
• Boolean: جهت مقادير درست يا نادرست
• Byte: جهت مقادير صحيح صفر تا ۲۵۵ (تنها مقادير مثبت)
• Char: جهت مقادير نويسه ها يا حروف يونيکد
• Date: جهت مقادير تاريخ و زمان بين اول ژانويه ۰۰۰۱ و ۳۱ دسامبر ۹۹۹۹
• Decimal: جهت مقادير صحيح بين صفر و مثبت و منفی
۷۹,۲۲۸,۱۶۲,۵۱۴,۲۶۴,۳۳۷,۵۹۳,۵۴۳,۹۵۰, ۳۳۵ (۱۶ بايت)
• Double: جهت مقادير اعشاری با دقت مضاعف
• Integre: جهت مقادير صحيح بين +۲,۱۴۷,۴۸۳,۶۴۷ و -۲,۱۴۷,۴۸۳,۶۴۸ (۴ بايت)
• Long: جهت مقادير صحيح بين -۹,۲۲۳,۳۷۲,۰۳۶,۸۵۴,۷۷۵,۸۰۸ و +۹,۲۲۳,۳۷۲,۰۳۶,۸۵۴,۷۷۵,۸۰۷ (۸ بايت)
• Short: جهت مقادير صحيح بين -۳۲,۷۶۸ و +۳۲,۷۶۷ (۲ بايت)
• Single: جهت مقادير اعشاری با دقت واحد
• String: جهت مقادير رشته ای با تعداد حروف صفر تا دو ميليارد حرف
پر کاربردترين انواع داده ای عبارتند از Integer، Decimal، Date، Boolean و String.
دقت کنيد که نوع داده ای Currency يا Money برای مقادير پولی در نظر گرفته نشده است و شما می توانيد برای مقادير پولی از نوع Decimal استفاده کنيد.
 


منابع :


طراحی سایت : سایت سازان