مشکل استفاده از حروف فارسی هنگام جستجو در data bae
سلام دوستان مشگلی که دارنم اینه
من یه کلاس تعریف کردم با database ام که sql server هست ارتباط داره یه تابع جستجو داره و نتیجه که یه dataView هست return میکنه
داخل کلاس یه تابع جستجو هست و مشگلم اینه که حروف انگلیسی که وارد میکنم به درستی کار میکنه و جواب میده ولی قارسی که تایپ میکنم برا جستجو خطا میده هنگام obj_Adaptre.fill(DS,"Tabel")
لطفا کمکم کنین
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
کدی رو که برای جستجو نوشتید بذارید
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
public DataView Return_View(String Find_Query) {
Obj_Adapter = new SqlDataAdapter(Find_Query , Con_Address);
Obj_DataSet.Clear();//clear kardan mohtaviate data set baraye inke agr dobar yek esm ra serch kardam dobar neshan nadahad
Obj_Adapter.Fill(Obj_DataSet, "Tabel");
Obj_DataView.Table = Obj_DataSet.Tables["Tabel"];
return Obj_DataView;
}
--------------------------------------------------------
String Query = "Select * From Tbl_EmployeSalary Where Jobe_ID='" + textBox1.Text + "' OR Jobe_Name='"+textBox1 .Text +"' OR Salary='" + textBox1.Text + "'";
D_View = Cls_ser.Return_View(Query);
dataGridView1.DataSource = D_View;
البته تو سازنده کلاس خورده کاریا مثل connection و غیره انجام شده اسم کلاسم ClS_serch هست که از Cls_ser رو ساختم
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
String Query = "Select * From Tbl_EmployeSalary Where Jobe_ID=N'" + textBox1.Text + "' OR Jobe_Name=N'"+textBox1 .Text +"' OR Salary=N'" + textBox1.Text + "'";
N رو باید قبل از 'مقدار مورد نظر ' اضافه کنی ، مثل کد بالا ( البته من همینجوری N رو اضافه کردم ! فیلد هایی رو که مقادیر فارسی دارن براشون N بذار
مشکل حل نشد اطلاع بده
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
نشد این error رو میده
Conversion failed when converting the nvarchar value 'مهندس' to data type int
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
بلا پست رو ویرایش کردم ، جاهایی رو N بذار که فیلدش مقدار فارسی رو میگیره مثلا برای ID که از نوع int باید باشه نباید بذاری
فیلدهایی رو که توی دیتابیس معرفی کردید برای این سه از چه نوعی در نظر گرفتید ؟
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
String Query = "Select * From Tbl_EmployeSalary Where Jobe_ID='" + textBox1.Text + "' OR Jobe_Name=N'" + textBox1.Text.Trim () + "' OR Salary='" + textBox1.Text + "'";
بازهمون پیغام رو میده
Conversion failed when converting the nvarchar value 'مهندس' to data type int
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
برای ID , Salary از تک کوتیشن استفاده نکن ( البته اگز از نوع int هستن ) و اگه مشکل حل نشد نوع فیلدهاتون رو ذکز کنین
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
ID int,
salary va name nvarchar(10)
الان یه وقتی فقط این دستور رو وارد کردم برای فارسیم کار کرد
String Query = "Select * From Tbl_EmployeSalary Where Jobe_Name=N'" + textBox1.Text.Trim () + "'";
ولی هنوز کاری که میخوام یعنی کد زیر انجام نشد
String Query = "Select * From Tbl_EmployeSalary Where Jobe_ID=" + textBox1.Text + " OR Jobe_Name=N'" + textBox1.Text.Trim () + "' OR Salary=" + textBox1.Text + "";
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
برای salary هم از تک کوتیشن و N استفاده کن چون از نوع nvarchar هست
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
String Query = "Select * From Tbl_EmployeSalary Where Jobe_ID=" + textBox1.Text + " OR Jobe_Name=N'" + textBox1.Text.Trim () + "' OR Salary=N'" + textBox1.Text + "'";
نشد با این error
Invalid column name 'مهندس'.
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
اگه براتون ممکنه اپش کنین پروژه رو چک کنم اگه نه صبر کنین دوستان بیان کمک کنن
بمونم یا نه ؟ ( ینی اپش میکنین یا نه ؟ ) :لبخند:
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
نشد دوباره کار نکرد با این کدم
String Query = "Select * From Tbl_EmployeSalary Where Jobe_ID=" + textBox1.Text + " OR Jobe_Name=N'" + textBox1.Text.Trim () + "' OR Salary=N'" + textBox1.Text + "'";
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
کلش خیلی زیاده وسر در نمیارین چون روابط فرما رو انجام ندادم ولی اگه کلاس و فرم مورد جواب میده رو میخواین up کنم؟
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
میخواستم پروژه ی خودتون رو چک کنم
نقل قول:
ولی اگه کلاس و فرم مورد جواب میده رو میخواین up کنم
اینجوری مجبورم دیتابیسو بسازم و چک کنم و شاید مشکلی رو حل نکنه
دوستان با تجربه فردا مشکلتونو حل میکنن
ببخشید
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
سلام، مشکل اینجاست که شما با یک textbox میخوای همزمان هم فیلد از نوع int و هم فیلدهای از نوع رشته رو فیلتر کنی. معمولا این کاری که شما انجام دادی رو کسی انجام نمیده ( یعنی استاندارد نیست). حداقل یه چک باکسی بذار که مثلا متغیر عددی رو از متغیر رشته ای تفکیک کنه و بعد با توجه به اون چک باکس بیا یک کوئری واسه نوع عددی و یک کوئری واسه نوع رشته ای بنویس.
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
ممنون درسته مشکلم حل شد وقتی جدا کردم
ولی من میخوام یه textbox باشه و به کاربر اجازه بدم با هر فیلدی که یادشه جستجو کنه
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
اینی که شما میخوای رو من نمیدونم ولی اصولیش همونی بود که خدمتتون گفتم.(کاربر که میدونه میخواد id وارد کنه یا فامیلی یا هر چیز دیگه ای. به نظر من اگر میخوای از یک تکست باکس همزمان استفاده کنی یا چک باکس استفاده کن یا یک کمبوباکس بذار و از کمبو انتخاب کنه.)
موفق باشی دوست من.
نقل قول: مشکل استفاده از حروف فارسی هنگام جستجو در data bae
سلام من هم از این کد برای جستجو استفاده کردم
ولی موقع نمایش نتیجه جستجو بجای فیلد Ex_Roll علامت سوال نمایش میده
ALTERprocedure [dbo].[pcExSearchnoDate]
@Ex_Name nvarchar(50)=null,
@Ex_Reason nvarchar(50)=null,
@Knd_ID nvarchar(50)=null,
@Ex_Executer nvarchar(50)=null
as
begin
Declare @where nvarchar(max)=''
Declare @select nvarchar(max)=''
declare @true nvarchar
set @select='select Ex_ID,Ex_Name,Ex_Reason,dbo.PersianDate( Ex_StartDate) as Ex_StartDate,dbo.PersianDate( Ex_EndDate) as Ex_EndDate
,dbo.PersianDate( Ex_RecordDate) as Ex_RecordDate,Knd_ID,Knd_Title,Ex_Executer,
Ex_Rol=case Ex_Rol
when(''1'')then N''فعال''
when(''0'')then N''غیرفعال ''
end
,Ex_Number,IsActive
from dbo.view_Exam'
set @true='1'
set @where='IsActive='+@true+' And'
ifnot @Ex_Name isnull
set @where+=' Ex_Name like N''%'+@Ex_Name+'%'' And'
ifnot @Ex_Reason isnull
set @where+=' Ex_Reason like N''%'+@Ex_Reason+'%'' And'
ifnot @Knd_ID isnull
set @where+=' Knd_ID like N''%'+@Knd_ID+'%'' And'
ifnot @Ex_Executer isnull
set @where+=' Ex_Executer like N''%'+@Ex_Executer+'%'' And'
if @where <>''
begin
SET @where=SUBSTRING(@where,0,LEN(@where)- 3)
set @select+=' where '+@where
execsp_executesql@select
end
else
execsp_executesql@select
end