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

نام تاپیک: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

  1. #1
    VIP آواتار raziee
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    35
    پست
    2,208

    چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    سلام
    من همیشه برای پرس و جو از بانک اطلاعاتی از StoredProcedure استفاده میکنم.
    هر کسی رو هم که دیده ام تا حالا به همین نحو بوده.
    حالا سوالم اینه که چطور میشه از Function به جای StoredProcedure استفاده کرد؟
    آیا اصلا همچین امکانی وجود داره؟

    مثلا برای درج اطلاعات اگه اطلاعات قبلا وجود داشته باشه بوسیله Function یک مقدار به برنامه برگرده.
    امیدوارم که منظورم رو متوجه شده باشید.

    چطور میشه یه مقدار رو مستقیما از بانک بیرون کشید.
    ممنون

    نگو به سرنوشت میبازی - تو بخوای فردا رو میسازی

  2. #2
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    1,025

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    یه راهش اینه که تابع رو به صورت کوئری اجرا کنید
    مثلا من تابعی دارم که در سمت بانک مقدار تاریخ شمسی رو برمیگردونه توی C#‎ به این صورت ازش استفاده میکنم


    SqlConnection sqlConnection = new SqlConnection(connectiostring);
    SqlCommand sqlCommand = new SqlCommand("Select dbo.GetShamsiDate() ",sqlConnection);
    string sDate = sqlCommand.ExecuteScaler().ToString();

  3. #3
    VIP آواتار raziee
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    35
    پست
    2,208

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    نقل قول نوشته شده توسط NewFoxStudent مشاهده تاپیک
    یه راهش اینه که تابع رو به صورت کوئری اجرا کنید
    مثلا من تابعی دارم که در سمت بانک مقدار تاریخ شمسی رو برمیگردونه توی C#‎ به این صورت ازش استفاده میکنم


    SqlConnection sqlConnection = new SqlConnection(connectiostring);
    SqlCommand sqlCommand = new SqlCommand("Select dbo.GetShamsiDate() ",sqlConnection);
    string sDate = sqlCommand.ExecuteScaler().ToString();
    یعنی دیگه از StoredProcedureاستفاده نمیکنیم؟
    اونوقت تو بانک بایدFunction بنویسم دیگه درسته بعد طریقه فراخونیش تنها به همین صورته؟

    Select dbo.Function
    نگو به سرنوشت میبازی - تو بخوای فردا رو میسازی

  4. #4
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    1,025

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    یکی از راههای استفاده از تابع اینه
    اگه راه دیگه ای داشته باشه من بلد نیستم

  5. #5
    کاربر دائمی آواتار unique1984
    تاریخ عضویت
    دی 1384
    محل زندگی
    Newjef Land
    سن
    39
    پست
    221

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    اگه تابع ما پارامتر داشته باشه ، نحوه صدا زدنش به چه صورته؟

  6. #6
    کاربر دائمی آواتار a.maleki
    تاریخ عضویت
    تیر 1386
    محل زندگی
    یه جائی تو گرانشهر تهران
    پست
    310

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    دوستان تا اونجائی که من اطلاع دارم توابع فقط می تونند یه مقدار رو برگردونند حالا با این حال فکر نمیکنید امکان استفاده دستوراتی مانند insert و update و... در توابع وجود نداره

  7. #7
    کاربر دائمی آواتار adinochestva
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    jre
    پست
    460

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    ما توابع table valued رو هم داريم كه table بر مي گردونند و كلا امكان استفاده از update و insert چه در scalar valued يا table valued وجود دارد

  8. #8
    VIP آواتار raziee
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    35
    پست
    2,208

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    من اگه بخوام یه فانکشنی تو بانکم داشته باشم که اگر نام کاربری و گذرواژه درست بود مقدار True رو برگردونه و اگر هم درست نبود مقدار False رو باید چه کار کنم؟

    بعد تو دات نت چه جوری میتونم این مقدار رو بخونم؟

    ببینید من این کار رو (لاگین کاربر) رو با استفاده از Select کردن میگرفتم
    SELECT     tb_Member.*
    FROM tb_Member
    WHERE (UserName = ?) AND (Password = ?)

    بعد برای اینکه ببینم سطری وجود داره یا نه از Count که داخل DataView استفاده می کردم ولی میدونم که کار صحیحی نیست(یعنی کارای بهتر هم میشه کرد.)
    حالا دوستان چه چیزی رو پیشنهاد میدند؟
    نگو به سرنوشت میبازی - تو بخوای فردا رو میسازی

  9. #9
    کاربر دائمی آواتار ASKaffash
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    تهران
    پست
    2,427

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    نقل قول نوشته شده توسط raziee مشاهده تاپیک
    سلام
    من همیشه برای پرس و جو از بانک اطلاعاتی از StoredProcedure استفاده میکنم.
    هر کسی رو هم که دیده ام تا حالا به همین نحو بوده.
    حالا سوالم اینه که چطور میشه از Function به جای StoredProcedure استفاده کرد؟
    آیا اصلا همچین امکانی وجود داره؟

    مثلا برای درج اطلاعات اگه اطلاعات قبلا وجود داشته باشه بوسیله Function یک مقدار به برنامه برگرده.
    امیدوارم که منظورم رو متوجه شده باشید.

    چطور میشه یه مقدار رو مستقیما از بانک بیرون کشید.
    ممنون

    سلام
    درون بدنه تابع SQLSever محدودیتهائی وجود دارد:


    The following statements are allowed in the body of a multi-statement function. Statements not in this list are not allowed in the body of a function:
    • Assignment statements.
    • Control-of-Flow statements.
    • DECLARE statements defining data variables and cursors that are local to the function.
    • SELECT statements containing select lists with expressions that assign values to variables that are local to the function.
    • Cursor operations referencing local cursors that are declared, opened, closed, and deallocated in the function. Only FETCH statements that assign values to local variables using the INTO clause are allowed; FETCH statements that return data to the client are not allowed.
    • INSERT, UPDATE, and DELETE statements modifying table variables local to the function.
    • EXECUTE statements calling an extended stored procedures.

  10. #10
    VIP آواتار raziee
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    35
    پست
    2,208

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    درون بدنه تابع SQLSever محدودیتهائی وجود دارد:
    میشه بیشتر توضیح بدین.
    نگو به سرنوشت میبازی - تو بخوای فردا رو میسازی

  11. #11
    کاربر دائمی آواتار ASKaffash
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    تهران
    پست
    2,427

    نقل قول: چطور میتونیم بجای StoredProcedure از Function استفاده کرد

    سلام
    درون بدنه یک تابع :
    نمیتوان دستورات Insert و Update و Delete را بکار برد
    نمیتوان از Dynamic SQL استفاده کرد (Execute)
    نمیتوان یک دستور Select مشابه درون SP نوشت
    ....

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

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