PDA

View Full Version : جستجو در رشته



project80888
پنج شنبه 06 بهمن 1390, 16:59 عصر
سلام دوستان
متن زیر را در نظر بگیرید
select * from Tbl1
where v1=@Parm1 and v2=@param2 or v3=@param4 and name Like '+@Param5+'
من نیاز به تکه کدی دارم که پارمترهای متن بالا را به من نمایش دهد
یعنی خروجی کد من مقادیر زیر را به من نمایش بدهد
@Param1
@param2
@param3
@param4
@param5
اگر از دوستان کسی بتونه منو راهنمایی کنه و جواب سوال منو بده ممنون میشم

ali_habibi1384
پنج شنبه 06 بهمن 1390, 23:18 عصر
خودت سوالتو بخون ببين چي ميفهمي خداييش!:چشمک:

shadi khanum
پنج شنبه 06 بهمن 1390, 23:34 عصر
یه سوال.. این دستور Select رو خودتون ساختین یا مثلا commandbuilder تولید کرده؟

shadi khanum
پنج شنبه 06 بهمن 1390, 23:51 عصر
این تابع کاری که میخوای رو واست انجام میده.(به شرطی که بعد از تموم شدن نام پارامترت حتما فاصله باشه) البته اگه دستورت توسط builder درست شده باشه خیلی راحت تر میتونی این کار رو بکنی



private void GetParamName()
{
string s = "select * from Tbl1 where v1=@Parm1 and v2=@param2 or v3=@param4 and name Like '+@Param5+'", Res = "", total = "";
int index1 = -1, index2 = -1;
index1 = s.IndexOf("@");
while (index1 != -1)
{
index2 = s.IndexOf(" ", index1);
if (index2 != -1)
{
Res = s.Substring(index1, index2 - index1);
s = s.Replace(Res, "");
total += Res + ",";
}
else
{
s = s.Remove(index1, 1);
}

index1 = s.IndexOf("@");
}
if (total.Length > 1)
{
total = total.Substring(0, total.Length - 1);
}
MessageBox.Show(total);
}

موفق باشی