مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

efj_7@yahoo.com

عضویت از 1395/03/27

ارسال چند پارامتر به استورپروسیجر برای دستور like

  • پنجشنبه 21 شهریور 1398
  • 10:42
تشکر میکنم

سلام

من یک ستون دارم به نام بانک و میخوام رکورد هایی که شامل  نام بانک هایی که در list box انتخاب شده  رو بفرستم به استورپروسیجر و خروجی رو ببینم به طور مثال

  AND (Bank  like N'%%' OR Bank Like N'%%' )

و مقادیری که در list box انتخاب میشه هر بار میتونه تعدادش متفاوت باشه چه طور میشه دستور like رو داینامیک نوشت که بشه چند مقدار بهش فرستاد .

تو سی شارپ اینکارو انجام دادم ولی جواب نداد

 int i = 0;
                            foreach (System.Web.UI.WebControls.ListItem item in ddl_Bank.Items)
                            {
                                if (item.Selected)
                                {
                                    if (i == 0)
                                    {
                                        Bank = "N'%" + item.Text + "%'";
                                        i++;
                                    }
                                    else
                                    {
                                        Bank += " OR Bank Like N'%" + item.Text + "%'";
                                    }                                    
                                }

                            }

پاسخ های این پرسش

تعداد پاسخ ها : 2 پاسخ
کاربر سایت

efj_7@yahoo.com

عضویت از 1395/03/27

  • پنجشنبه 21 شهریور 1398
  • 11:32
	@Bank1 NVARCHAR(50)='',
	@Bank2 NVARCHAR(50)='',
	@Bank3 NVARCHAR(50)='',
	@Bank4 NVARCHAR(50)='',
	@Bank5 NVARCHAR(50)='',
	@Bank6 NVARCHAR(50)='',
	@Bank7 NVARCHAR(50)='',
	@Bank8 NVARCHAR(50)=''

AND (@Bank1 IS NULL  OR  @Bank2 IS NULL  OR  @Bank3 IS NULL OR  @Bank4 IS NULL OR  @Bank5 IS NULL  OR
 @Bank6 IS NULL OR  @Bank7 IS NULL OR @Bank8 IS NULL OR ( Bank Like N'%' + @Bank1 + '%' 
 OR Bank Like N'%' + @Bank2 + '%'  OR Bank Like N'%' + @Bank3 + '%'  
OR Bank Like N'%' + @Bank4 + '%'  OR Bank Like N'%' + @Bank5 + '%'
  OR Bank Like N'%' + @Bank6 + '%'  OR Bank Like N'%' + @Bank7 + '%'  OR Bank Like N'%' + @Bank8 + '%' ) )

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

کاربر سایت

AmirGhasemi

عضویت از 1392/02/25

  • پنجشنبه 21 شهریور 1398
  • 12:07

سلام

والا الان نمی تونم دست به کد بشم فقط راه حل را می گم اگر تونستی که خب مرحبا

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

راه حل:

توی SP  خودت یک Virtual Table  ایجاد کن و مقادیری که می خواهی پاس بدهی را بریز داخل این Virtual Table  و سپس Like  خودت را روی این تیبل پیاده کن

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)