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

نام تاپیک: کار نکردن عملیات جستجو

  1. #1

    کار نکردن عملیات جستجو

    سلام
    من یه برنامه دارم که با پایگاه داده کار می کنه تو برنامه یه جستجو براساس فامیلی قرار دادم وقتی یه فامیلی که به صورت فارسی در پایگاه هست جستجو می کنم اطلاعات اون رکورد رو نمیاره ولی اگه به زبان انگلیسی باشه درست کار می کنه یعنی در واقع رکورد هایی که به زبان فارسی هست رو پیدا نمی کنه
    ممنون میشم کمکم کنید

  2. #2

    نقل قول: کار نکردن عملیات جستجو

    collation دیتابیس چیه؟
    کلمه ای که جستجو میکنید چیه(حروف ک گ پ ژ چ) داره؟
    اگه نه، برای همه کلمات فارسی مشکل داره که باید بگم نمیدونم
    ولی اگه آره که باید بگم
    وقتی شما در کیبورد حرفی مثل ک رو تایپ میکنید، کدی که کیبورد میفرسته و کدی که اس کیو ال در بانک ذخیره میکنه فرق میکنن و موقع خوندن مشکل دار میشه(البته توی حروف مذکور). چون کیبورد فارسی و عربی حروف مشترک مثل م و س و ... دارن و پیش فرض زبان دیتابیس هم عربیک هست که مشکل دار میکنه
    اگه ایراد از این باشه چند راه دارین
    یکی این که موقع درج هر رشته توی بانک پشت متون حرف N رو قرار بدید(تا تبدیل به یونیکد بشه)
    مثلا

    insert into tbl(field1)values(N'ali')

    یکی دیگه که راحت تر هم هست، مچ کردن کیبورد با ویندوزه. که باید فایل KBDFA.dll استاندارد فارسی رو با حجمی چند کیلوبایتی گیر بیارید و روی سیستم در حالت safe mode کپی کنید(و روی سیستم مشتری هم هم!)
    امیدوارم کمک کنه.(من همونقدر بلدم)

  3. #3

    نقل قول: کار نکردن عملیات جستجو

    نقل قول نوشته شده توسط mohammad_bagherani مشاهده تاپیک
    collation دیتابیس چیه؟
    کلمه ای که جستجو میکنید چیه(حروف ک گ پ ژ چ) داره؟
    اگه نه، برای همه کلمات فارسی مشکل داره که باید بگم نمیدونم
    ولی اگه آره که باید بگم
    وقتی شما در کیبورد حرفی مثل ک رو تایپ میکنید، کدی که کیبورد میفرسته و کدی که اس کیو ال در بانک ذخیره میکنه فرق میکنن و موقع خوندن مشکل دار میشه(البته توی حروف مذکور). چون کیبورد فارسی و عربی حروف مشترک مثل م و س و ... دارن و پیش فرض زبان دیتابیس هم عربیک هست که مشکل دار میکنه
    اگه ایراد از این باشه چند راه دارین
    یکی این که موقع درج هر رشته توی بانک پشت متون حرف N رو قرار بدید(تا تبدیل به یونیکد بشه)
    مثلا

    insert into tbl(field1)values(N'ali')

    یکی دیگه که راحت تر هم هست، مچ کردن کیبورد با ویندوزه. که باید فایل KBDFA.dll استاندارد فارسی رو با حجمی چند کیلوبایتی گیر بیارید و روی سیستم در حالت safe mode کپی کنید(و روی سیستم مشتری هم هم!)
    امیدوارم کمک کنه.(من همونقدر بلدم)
    دوست عزیز خیلی ممنون از کمکتون
    ولی برنامه من با همه حروف مشکل داره

  4. #4
    کاربر تازه وارد آواتار imani1983
    تاریخ عضویت
    دی 1386
    محل زندگی
    مغان
    سن
    40
    پست
    91

    نقل قول: کار نکردن عملیات جستجو

    دوست عزيز اين نمونه كد را امتحان كن ببين چي كار مي كنه؟
            private void button2_Click(object sender, EventArgs e)
    {
    try
    {
    SqlDataAdapter da = new SqlDataAdapter(sqlCommand1.CommandText, sqlConnection1.ConnectionString);
    DataSet ds = new DataSet();
    SqlDataReader reader;
    da.Fill(ds, "bimar");
    dataGridView1.DataSource = ds;
    dataGridView1.DataMember = "bimar";
    sqlCommand1.Connection.Close();
    sqlCommand1.CommandText = "select * from bimar where namebimar=" + "'" + comboBox7.Text + "'" + "and codepersonal=" + "'" + textBox1.Text + "'";
    sqlCommand1.Connection.Open();
    reader = sqlCommand1.ExecuteReader();
    while (reader.Read() == true)
    {
    textBox7.Text = (string)reader["codepersonal"];
    textBox3.Text = (string)reader["family"];
    textBox4.Text = (string)reader["namebimar"];
    break;
    }
    }
    catch (Exception)
    {
    MessageBox.Show("چنين بيماري وجود ندارد");
    }

    }

  5. #5

    نقل قول: کار نکردن عملیات جستجو

    نقل قول نوشته شده توسط imani1983 مشاهده تاپیک
    دوست عزيز اين نمونه كد را امتحان كن ببين چي كار مي كنه؟
            private void button2_Click(object sender, EventArgs e)
    {
    try
    {
    SqlDataAdapter da = new SqlDataAdapter(sqlCommand1.CommandText, sqlConnection1.ConnectionString);
    DataSet ds = new DataSet();
    SqlDataReader reader;
    da.Fill(ds, "bimar");
    dataGridView1.DataSource = ds;
    dataGridView1.DataMember = "bimar";
    sqlCommand1.Connection.Close();
    sqlCommand1.CommandText = "select * from bimar where namebimar=" + "'" + comboBox7.Text + "'" + "and codepersonal=" + "'" + textBox1.Text + "'";
    sqlCommand1.Connection.Open();
    reader = sqlCommand1.ExecuteReader();
    while (reader.Read() == true)
    {
    textBox7.Text = (string)reader["codepersonal"];
    textBox3.Text = (string)reader["family"];
    textBox4.Text = (string)reader["namebimar"];
    break;
    }
    }
    catch (Exception)
    {
    MessageBox.Show("چنين بيماري وجود ندارد");
    }

    }
    سلام
    من وقتی برای درج از روش معمولی استفاده می کنم عملیات جستجو درست کار می کنه ولی وقتی از روش پارامتریک استفاده می کنم عمل جستجو انجام نمیشه و فقط برای حروف فارسی مشکل داره
    ممنون می شم کمکم کنید

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

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