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

نام تاپیک: مشکل با Stored Procedure

  1. #1
    محروم شده آواتار Babak-Aghili
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    در خاطرات شما
    پست
    801

    Unhappy مشکل با Stored Procedure

    سلام.

    متن کد و متن Stored Proc را نوشتم ام . خطایی که میگیره میگه : Invalid Cast Operation ....

    CREATE PROCEDURE LoginProc
    (@uId NVARCHAR(20), @uPass NVARCHAR(20), @uName NVARCHAR(20) OUTPUT)
    AS
    SET @uName =( SELECT @uName FROM TblUsers WHERE
    (TblUsers.userId = @uId AND TblUsers.userpassword = @uPass))
    GO


    SqlCommand cmd= new SqlCommand();
    cmd.Connection = con;
    cmd.CommandText="LoginProc";
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.Add("@uId",SqlDbType.NVarChar,20,"u serId");
    cmd.Parameters.Add("@uPass",SqlDbType.NVarChar,20, "userPassword");
    cmd.Parameters.Add("@uName",SqlDbType.NVarChar,20, "userName");

    cmd.Parameters["@uId"].Value= textBox1.Text;
    cmd.Parameters["@uPass"].Value= textBox2.Text;
    cmd.Parameters["@uName"].Direction = ParameterDirection.Output;
    cmd.Parameters["@uName"].Value = "";

    con.Open();
    SqlDataReader reader= cmd.ExecuteReader();
    bool b = reader.Read();

    string name = (string) cmd.Parameters["@uName"].Value;
    MessageBox.Show(name);



  2. #2
    کاربر دائمی
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    ایران - تهران
    پست
    127
    فکر شما با دستور Set می خواهید یک مقدار خروجی return کنید ؟؟ که Nvarchar را می خواد به INT تبدیل کنه که نمیشه ! و Error میده

  3. #3
    کاربر دائمی
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    ایران - تهران
    پست
    127

    Thumbs up

    به این کد یه نگاهی بکنید شاید کمکتون کنه


    CREATE PROCEDURE LoginProc

    (
    @username NVarchar( 100 ),
    @password NVarchar( 100 )
    )
    As

    DECLARE @ID INT
    DECLARE @actualPassword Varchar( 100 )

    SELECT
    @ID = UserID,
    @actualPassword = userpassword
    FROM TBLUser
    WHERE username = @username

    IF @ID IS NOT NULL
    IF @password = @actualPassword
    RETURN @ID
    ELSE
    RETURN - 2
    ELSE
    RETURN - 1


    اگر username پیدا نشه -1 برگشت میخوره
    اگر پسورد پیدا نشه -2 برگشت می خوره
    در غیر این صورت UserID برگشت میخوره

  4. #4
    محروم شده آواتار Babak-Aghili
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    در خاطرات شما
    پست
    801
    کد مسخره ی خودم را هنوز نمیدونم چه مرگشه .....

    ولی کد شما ... ok.... ممنون ... زحمت کشیدید .. مرسی.

  5. #5
    کاربر دائمی
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    ایران - تهران
    پست
    127

    Thumbs up

    شما از کد زیر در Store Procedure خود استفاده کنید.

    CREATE PROCEDURE LoginProc
    (
    @uId NVARCHAR(20),
    @uPass NVARCHAR(20),
    @uName NVARCHAR(20)OUTPUT)
    AS
    SELECT @uName = username
    FROM TblUser WHERE
    TblUser.userId = @uId AND TblUser.userpassword = @uPass

    Return
    GO


    برای TEST هم در Query Analyzer از کد زیر استفاده کنید


    declare @getvaleu as nvarchar (20)
    execute loginproc2
    @uid='YOUR ID',@upass='YOUR PASSWORD',@uname=@getvaleu output
    print @getvaleu
    فکر کنم مشکلتون حل شه!
    یه خبری بده.موفق باشی

  6. #6
    محروم شده آواتار Babak-Aghili
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    در خاطرات شما
    پست
    801
    آره .... مرسی ......

    دستت درست ......

  7. #7
    کاربر دائمی
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    ایران - تهران
    پست
    127
    خواهش میکنم ;)

  8. #8
    دستتون درد نکنه

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

  1. اجرای stored procedure های SQL در C#‎.net
    نوشته شده توسط روشندل در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 4
    آخرین پست: سه شنبه 08 بهمن 1392, 21:41 عصر
  2. Stored Procedure با چند دستور SQL
    نوشته شده توسط mehdi58 در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: دوشنبه 15 اسفند 1384, 01:50 صبح
  3. stored procedure
    نوشته شده توسط brida_kh در بخش SQL Server
    پاسخ: 1
    آخرین پست: چهارشنبه 04 آبان 1384, 15:50 عصر
  4. Stored Procedure
    نوشته شده توسط M.kavyani در بخش SQL Server
    پاسخ: 3
    آخرین پست: دوشنبه 11 مهر 1384, 12:58 عصر
  5. ذخیره خروجی Stored Procedure در یک جدول
    نوشته شده توسط gh_fereydonpoor در بخش SQL Server
    پاسخ: 1
    آخرین پست: شنبه 02 مهر 1384, 23:16 عصر

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

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