آژانس هواپیمایی
pop up

میخوام یک مقدار رو با استفاده از ADO.NET از دیتابیس بخونم

شروع موضوع توسط amir_3d_mad ‏8 دسامبر 2007 در انجمن asp , ASP.NET

  1. amir_3d_mad

    amir_3d_mad Registered User

    تاریخ عضویت:
    ‏4 ژوئن 2007
    نوشته ها:
    98
    تشکر شده:
    0
    من میخوام با استفاده از ADO.NET یک مقدار رو از دیتابیس بخونم و اونو در یک متغیر بریزم .
    می دونم که باید از DataReader استفاده بکنم ، ولی بلد نیستم .
    مثلا وقتی با دستور :
    کد:
    [LEFT]    Private Sub Filldatabase(ByVal MemberCode As Integer)
            Dim conn As New Data.OleDb.OleDbConnection("--")
            conn.Open()
            Dim ds As New Data.DataSet
            Dim strSql As String = ("Select MemberName , Counter , MemberCode From Members where MemberCode = " & MemberCode)
            Dim adapt As New Data.OleDb.OleDbDataAdapter(strSql, conn)
            adapt.Fill(ds, "Members")
            rptMembers.DataSource = ds
            rptMembers.DataBind()
    
        End Sub[/LEFT]
    یک سطر از دیتابیس رو در rptMembers میریزیم ، به جا اون یک فیلد از همون سطر رو در یک متغیر مثلا MemberName بریزیم .
     
  2. mehdivk

    mehdivk Registered User

    تاریخ عضویت:
    ‏5 آپریل 2006
    نوشته ها:
    319
    تشکر شده:
    0
    نمونه کد جهت انجام این کار :
    کد:
    Imports System.Data.SqlClient
    Public Class Form1 Inherits System.Windows.Forms.Form
    Dim myConnection As SqlConnection
    Dim myCommand As SqlCommand
    Dim dr As New SqlDataReader()
    'declaring the objects
    
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)_
    Handles MyBase.Load
    myConnection = New SqlConnection("server=localhost;uid=sa;pwd=;database=pubs")
    'establishing connection. you need to provide password for sql server
    Try
    myConnection.Open()
    'opening the connection
    myCommand = New SqlCommand("Select * from discounts", myConnection)
    'executing the command and assigning it to connection
    dr = myCommand.ExecuteReader()
    While dr.Read()
    'reading from the datareader
    MessageBox.Show("discounttype" & dr(0).ToString())
    MessageBox.Show("stor_id" & dr(1).ToString())
    MessageBox.Show("lowqty" & dr(2).ToString())
    MessageBox.Show("highqty" & dr(3).ToString())
    MessageBox.Show("discount" & dr(4).ToString())
    'displaying the data from the table
    End While
    dr.Close()
    myConnection.Close()
    Catch e As Exception
    End Try
    End Sub
    
    End Class
    اطلاعات بیشتر را در این لینک مطالعه کنید.
     
  3. mehdivk

    mehdivk Registered User

    تاریخ عضویت:
    ‏5 آپریل 2006
    نوشته ها:
    319
    تشکر شده:
    0
    در ضمن با توجه به اینکه آموزش نحوه استفاده از شی SqlDataReader از مفاهیم اولیه در برنامه نویسی دات نت بحساب می آید که از اولین نسخه دات نت هم بوده و الان هم هست منابع فارسی خیلی زیادی تو اینترنت از جمله سايت پرشیا دلوپر و همین سايت Srco.ir هست ، برای نمونه این جستجو در گوگل را نگاه کن ، کلی مطلب فارسی در مورد این مبجث پیدا میشه
     
  4. amir_3d_mad

    amir_3d_mad Registered User

    تاریخ عضویت:
    ‏4 ژوئن 2007
    نوشته ها:
    98
    تشکر شده:
    0
    من جواب های شما رو دیدم .
    ممنون که وقت گذاشتید .
    ولی نمیدونم چرا هر کاری میکنم ، نمیتونم کار مورد نظرمو انجام بدم !
    من فقط میخوام بر اساس کوئری استرینگ ، یک فیلد از یک سطر دیتابیس رو بدست بیارم و بر اساس اون مقدار ، کاربر رو به صفحه دیگه انتقال بدم .
    یعنی من دو نوع صفحه طلایی و نقره ای برای کاربران در نظر گرفتم .
    حال من توی کوئری استرینگ فقط ID اون کاربر رو دارم و نمیدونم که کاربر من از نوع طلایی اه یا نقره ای !
    واسه همین میخوام موقع لود شدن صفحه ، بلافاصله نوع اون کاربر رو از دیتابیس در بیارم و به صفحه خودش ریدایرکت کنم .
    همین .
    اگه بیشتر کمکم کنید ممنون میشم .
    مرسی .
     
  5. mehdivk

    mehdivk Registered User

    تاریخ عضویت:
    ‏5 آپریل 2006
    نوشته ها:
    319
    تشکر شده:
    0
    اوکی ، پس شما با چگونگی تشخیص کاربر مشکل دارید ، من با این فرض میرم جلو که شما یه جدولی دارید به اسم Users که در آن فهرست کاربران شما درج شده است ، در این جدول ستونی وجود دارد با نام UserType که جنس کاربر شما را مشخص می کند ، مثلا کاربر طلائی ، کاربر نقره ای و کاربر برنزی ، خوب کافیست که این Query را بعنوان SelectCommand تنظیم کنیم
    کد:
    "SELECT UserType FROM Users WHERE UserID="+Request.QueryString["ID"]
    خوب حالا کافیست که با استفاده از شی SqlConnection وصل بشوید به پایگاه داده ، با استفاده از SqlCommand دستور فوق الذکر را اجرا نمائید و با استفاده از شی SqlDataReader اطلاعات خروجی را بخوانید ، سپس با یک SWITCH ساده در سی شارپ می توانید شرط بزارید که مثلا اگر 1 بود (کاربر طلائی) به صفحه GoldUser.aspx هدایت شود ، اگر 2 بود (کاربر نقراه ای) به SilverUser.aspx هدایت شود به همین ترتیب
     
  6. amir_3d_mad

    amir_3d_mad Registered User

    تاریخ عضویت:
    ‏4 ژوئن 2007
    نوشته ها:
    98
    تشکر شده:
    0
    ok ممنون . حل شد .
    مرسی از راهنماییتون .
     
  7. boxilink