نمایش نتایج 1 تا 10 از 10

نام تاپیک: استفاده از پارامتر در دستور select

  1. #1
    کاربر دائمی
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    نصف جهان
    پست
    237

    استفاده از پارامتر در دستور select

    من می خواهم در ستور select پارامتر استفاده کنم ولی جواب نمی داد ازکد زیر استفاده کردم به نظرتون مشکلش چیه

    Dim
    da AsNew SqlDataAdapter("select subject,about from tb_create where username=@user ", con)

  2. #2
    کاربر دائمی آواتار mp2009
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    فارس - بوشهر
    پست
    499
    این دستور ظاهرا هیچ مشکلی نداره .
    مگه شما باهاش مشکل دارید؟

  3. #3
    کد خطا رو بگذارید

  4. #4
    کاربر دائمی
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    نصف جهان
    پست
    237
    این دستورا را می نویسم ولی پیغام میده که @user تعریف نشده

    Dim
    p1 AsNew SqlParameter("@user", SqlDbType.Char, 25)
    p1.Value = TextBox1.Text

    و بعدش دستوری را که بالانوشتم را مینویسم

  5. #5
    کاربر دائمی آواتار __H2__
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    یک جایی بین Framework و نارمک!
    پست
    1,059
    سلام
    1- اگر احیاناً TextBox شما خالی باشد، شاید موجب خطا شود.
    در این حالت باید خالی بودن را تشخیص داده و پارامتر را با System.DbNull.Value پر کنید یا سرچ نکنید و...

    2- امیدوارم پارامتر را به مجموعه پارامترهای Command اضافه کرده باشید؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ (انشا ا...)

    3- همانطور که دوستان هم گفتند، لطفاً متن کامل انگیلیسی خطا را بنویسید.
    (کلاً عادت خوبی است که هر که به مشکلی بر میخورد حداقل حداقل متن خطا را هم بگذارد)

  6. #6
    نقل قول نوشته شده توسط mohandesan مشاهده تاپیک
    این دستورا را می نویسم ولی پیغام میده که @user تعریف نشده

    Dim
    p1 AsNew SqlParameter("@user", SqlDbType.Char, 25)
    p1.Value = TextBox1.Text
    و بعدش دستوری را که بالانوشتم را مینویسم
    خب راست میگه.
    user رو به کی بایند کردید؟

  7. #7
    کاربر دائمی
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    نصف جهان
    پست
    237
    منظورتون از بایند کردن چیه؟
    من از یک روش دیگه استفاده کردم بعد از اینکه اون روش جواب نداد ولی این هم یه مشکل داره
    این کدش:

    If
    Not (IsPostBack) Then
    Label4.Text = Context.User.Identity.Name
    Dim s AsString = Label4.Text
    Dim cmd AsNew SqlCommand
    cmd.Connection = con
    Dim reader1 As SqlDataReader
    cmd.CommandText =
    "Select subject,about From tb_create" & _
    " Where username=" & s
    con.Open()
    reader1 = cmd.ExecuteReader
    reader1.Read()
    TextBox1.Text = RTrim(reader1.GetString(0))
    TextBox2.Text = RTrim(reader1.GetString(1))
    con.Close()
    EndIf

    اینم پیغام خطا
    Invalid column name 'محتویات متغیر s'.

  8. #8
    کاربر دائمی آواتار ir_programmer
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    خوزستان، استاني كه سرمايه اش در خدمت استانهاي ديگر است.
    پست
    420
    نوع UserName چیه؟ اگه رشته است اینجور بنویس:
    cmd.CommandText = "Select subject,about From tb_create" & _
    " Where username='" & s+"'"

  9. #9
    کاربر دائمی آواتار __H2__
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    یک جایی بین Framework و نارمک!
    پست
    1,059
    سلام
    عزیزجان از همون پارامتر استفاده کن ولی پارامتر را باید به Command اضافه کنیدریال ورگنه از کجا آن را پیدا کند
    مثلاً

    Dim fieldvalue As String
    Dim iCount As Integer
    '...
    'fieldvalue = "...."
    '...

    Using _
    dbCon As New System.Data.SqlClient.SqlConnection("CONNECTIONSTRING"), _
    dbCom As New System.Data.SqlClient.SqlCommand("SELECT COUNT(*) FROM [tablename] WHERE ([fieldname]=@fieldvalue)", dbCon)

    dbCom.Parameters.Add(New System.Data.SqlClient.SqlParameter("@fieldvalue", SqlDbType.NVarChar, 50, ParameterDirection.Input, False, 0, 0, Nothing, DataRowVersion.Default, fieldvalue))
    'dbCom.Parameters.AddWithValue("@fieldvalue", fieldvalue)

    dbCon.Open()
    iCount = CInt(dbCom.ExecuteScalar)
    End Using

  10. #10
    کاربر دائمی آواتار Sub Zero
    تاریخ عضویت
    اردیبهشت 1385
    محل زندگی
    اهواز
    پست
    443
    نقل قول نوشته شده توسط mohandesan مشاهده تاپیک
    این دستورا را می نویسم ولی پیغام میده که @user تعریف نشده

    Dim
    p1 AsNew SqlParameter("@user", SqlDbType.Char, 25)
    p1.Value = TextBox1.Text

    و بعدش دستوری را که بالانوشتم را مینویسم
    ببینید شما در قسمت SelectCommand برای اینکه به برنامه بگید میخوایید از پارامتر استفاده کنید، باید از @ استفاده کنید. اما لازم نیست دیگه در قسمت مقدار دهی به پارامتر ازش استفاده کنید. برای همین پیغام میده که @User تعریف نشده .
    دستورتون رو به این صورت اصلاح کنید:
    s.Parameters.Add("User", SqlDbType.Int).Value = TextBox1.Text


    ----------------------------------------------------------------------------
    اما روش که خودم استفاده میکنم فوق العاده آسونه . کافیه از متد String.Format استفاده کنید. مثال :
    Dim da AsNew SqlDataAdapter(String.Format("select subject,about from tb_create where username={0} ",TextBox1.Text), 
    con)

    با این متد هر تعداد پارامتر که بخواید میتویند اضافه کنید و از شر گذاشتن علامت & و نوشتن String های طولانی وپیچیده خلاص بشید .

تاپیک های مشابه

  1. بکار بردن AS در SELECT
    نوشته شده توسط archi در بخش SQL Server
    پاسخ: 2
    آخرین پست: دوشنبه 11 تیر 1386, 00:10 صبح
  2. دستورSelect
    نوشته شده توسط m_zamani در بخش VB.NET
    پاسخ: 3
    آخرین پست: چهارشنبه 23 اسفند 1385, 18:46 عصر
  3. وصل کردن 2 تیبل با دستور select
    نوشته شده توسط mpmsoft در بخش SQL Server
    پاسخ: 2
    آخرین پست: دوشنبه 21 اسفند 1385, 17:24 عصر
  4. مشکل با select
    نوشته شده توسط akb_behnam در بخش Foxpro
    پاسخ: 3
    آخرین پست: یک شنبه 06 اسفند 1385, 08:51 صبح
  5. استفاده از دستور select برای گزارش از دو ستون در یک ستون
    نوشته شده توسط mohamadmjk در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: چهارشنبه 15 آذر 1385, 17:31 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •