1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

دستیابی به بانک اطلاعاتی Access با استفاده از VB.NET

شروع موضوع توسط minaaa ‏22/10/11 در انجمن .Net

  1. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : دستیابی به بانک اطلاعاتی Access با استفاده از VB.NET

    در Solution Explorer ، بر روی صفحه aspx . ، کلیک سمت راست نموده و گزینه View Code را انتخاب نمائید

    مرجع namespace زیر را در بالاترین قسمت فایل کلاس code-behind وارد نمائید .


    Imports System.Data.OleDb​

    [​IMG]​
     
  2. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : دستیابی به بانک اطلاعاتی Access با استفاده از VB.NET

    کد زیر را در ارتباط با رویداد 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
     
  3. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : دستیابی به بانک اطلاعاتی Access با استفاده از VB.NET

    مقدار متغیر ConnectString در ابتدای کد نوشته شده فوق را تغییر و آن را به محلی که بانک اطلاعاتی موجود است ، اشاره دهید .

    از طریق منوی File ، گزینه Save All را انتخاب تا فرم وب و سایر فایل های مرتبط با پروژه ، ذخیره گردد .

    از طریق منوی Build ، گزینه Build Solution را بمنظور ایجاد پروژه ، فعال نمائید.
     
  4. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : دستیابی به بانک اطلاعاتی Access با استفاده از VB.NET

    در Solution Explorer ، بر روی DataSample.aspx کلیک سمت راست و در ادامه گزینه View in Browser را انتخاب نمائید . در ادامه صفحه در مرورگر نمایش و شامل داده موجود در بانک اطلاعاتی مربوطه است .


    [​IMG]​
     
  5. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : دستیابی به بانک اطلاعاتی Access با استفاده از VB.NET

    اشکالات و خطاهای احتمالی

    درزمان اجراء ، ممکن است با خطائی مانند زیر مواجه شویم :

    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 در فریمورک دات نت نسخه ۱،۱ اجراء می گردد.در این رابطه لازم است تغییرات لازم در رابطه با مجوز دستیابی به فایل mdb . و فولدری که شامل فایل است ، اعمال گردد .
     
  6. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : دستیابی به بانک اطلاعاتی Access با استفاده از VB.NET

    از نصب عناصر مورد نیاز Microsoft Jet database بر روی سیستم ، مطمئن گردید. در صورتیکه MDAC 2.6 نصب شده باشد ( Microsoft Data Access Components 2.6) ، عناصر Jet را شامل نمی گردد . در چنین مواردی می بایست آخرین نسخه Jet 4.0 Service Pack ، بر روی سیستم نصب گردد.