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

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

  1. #1
    کاربر دائمی
    تاریخ عضویت
    تیر 1389
    محل زندگی
    به جبر روزگار تهران هستم.
    پست
    2,718

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

    سلام دوستان،من میخوام واسه پروژه دفترچه تلفن خودم براساس تلفن و "نام و نام خانوادگی" گزارش گیری کنم،گزارش گیری بر اساس شماره تلفن رو بدون مشکل انجام میدم ولی وقتی جستجو رو براساس نام و نام خانوادگی انجام میدم،فیلدهای نام و نام خانوادگی رو که بصورت فارسی در sql ذخیره شدن نمیشناسه،(کلا جستجو براساس هیچ فیلد فارسی دیگه ای رو هم تشخیص نمیده)،از کد زیر هم برای جستجو استفاده میکنم:
    if (textBox1.Text == reader["name"].ToString().TrimStart())

  2. #2
    کاربر دائمی
    تاریخ عضویت
    تیر 1389
    محل زندگی
    به جبر روزگار تهران هستم.
    پست
    2,718

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

    نقل قول نوشته شده توسط mmd2009 مشاهده تاپیک
    با سلام.

    میشه کلا کدت رو بذاری

    یا یک نمونه برنامه بذار تا بشه راحتر فهمید و بهتر جواب داد.

    و راستی چرا؟ TrimStart ؟
    trimstart برای حذف فضاهای خالی پشت سر رشته فارسی بکار میره.

  3. #3
    کاربر دائمی
    تاریخ عضویت
    تیر 1389
    محل زندگی
    به جبر روزگار تهران هستم.
    پست
    2,718

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

    نقل قول نوشته شده توسط mohammaddou مشاهده تاپیک
    trimstart برای حذف فضاهای خالی پشت سر رشته فارسی بکار میره.
    کسی نیست مشکل گشای کار ما بشه؟؟

  4. #4

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

    نقل قول نوشته شده توسط mohammaddou مشاهده تاپیک
    سلام دوستان،من میخوام واسه پروژه دفترچه تلفن خودم براساس تلفن و "نام و نام خانوادگی" گزارش گیری کنم،گزارش گیری بر اساس شماره تلفن رو بدون مشکل انجام میدم ولی وقتی جستجو رو براساس نام و نام خانوادگی انجام میدم،فیلدهای نام و نام خانوادگی رو که بصورت فارسی در sql ذخیره شدن نمیشناسه،(کلا جستجو براساس هیچ فیلد فارسی دیگه ای رو هم تشخیص نمیده)،از کد زیر هم برای جستجو استفاده میکنم:
    if (textBox1.Text == reader["name"].ToString().TrimStart())
    ----
    درغیر اینصورت اگه اطلاعات وارد شده فارسی است پیشنهاد میکنم که اسمی و که میخوای جستجو کنی از داخل دیتا بیس کپی پیست کنی اگه نتونستی ببینیش دقت کن ببین اون اسم شامل حرف ی و یا حرف ک نباشه مثلا محمد رو جستجو کن اگه پیدا کرد یعنی کد درسته و فقط مشکلت با حروف ی و ک هستش در غیر اینصورت کد شما اشتباس

  5. #5
    کاربر دائمی
    تاریخ عضویت
    تیر 1389
    محل زندگی
    به جبر روزگار تهران هستم.
    پست
    2,718

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

    نقل قول نوشته شده توسط shirko_r مشاهده تاپیک
    ----
    درغیر اینصورت اگه اطلاعات وارد شده فارسی است پیشنهاد میکنم که اسمی و که میخوای جستجو کنی از داخل دیتا بیس کپی پیست کنی اگه نتونستی ببینیش دقت کن ببین اون اسم شامل حرف ی و یا حرف ک نباشه مثلا محمد رو جستجو کن اگه پیدا کرد یعنی کد درسته و فقط مشکلت با حروف ی و ک هستش در غیر اینصورت کد شما اشتباس
    نه عزیزان،عنوان فیلد در sql بصورت انگلیسی هستش(اسم فیلد name هستش)،مقادیر وارد شده رو بصورت فارسی وارد کردم،مثلا"رضا خجسته"،حالا وقتی در textbox1 مقدار "رضا خجسته" رو وارد میکنم،اونو شناسایی نمیکنه،ولی اگه یه نام انگلیسی ثبت کنم مثلا "reza khojaste" و بعدش این نام انگلیسی رو جستجو میکنم،شرط برقرار میشه،حالا به نظرتون مشکل کجاست؟اینم بخشی از کد برنامه(tell نام جدول ثبت تلفن هاست،فیلد نام رو در sql از نوع nchar
    cmd.Connection = con;


    SqlCommand cmd1 = new SqlCommand();
    cmd1.Connection = con;
    cmd1.CommandText = "SELECT * FROM tell";
    con.Open();


    SqlDataReader reader = cmd1.ExecuteReader();

    int i = 0;
    while (reader.Read() == true)
    {
    if (textBox1.Text == reader["name"].ToString().TrimStart())
    {

  6. #6
    کاربر دائمی
    تاریخ عضویت
    تیر 1389
    محل زندگی
    به جبر روزگار تهران هستم.
    پست
    2,718

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

    کد رو بصورت زیر تغییر دادم ولی مشکل برای فیلدهای فارسی پابرجاست
    cmd.Connection = con;


    SqlCommand cmd1 = new SqlCommand();
    cmd1.Connection = con;
    cmd1.CommandText = "SELECT * FROM tell WHERE name=N'" + textBox1.Text + "'";
    con.Open();


    SqlDataReader reader = cmd1.ExecuteReader();

    int i = 0;
    while (reader.Read() == true)
    {
    if (textBox1.Text == reader["name"].ToString().TrimStart())
    {

  7. #7

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

    كدت رو بصورت زير تغيير بده ببين درست ميشه يا نه

    SqlCommand cmd1 = new SqlCommand();
    cmd1.Connection = con;
    cmd1.CommandText = "SELECT * FROM tell WHERE name LIKE @Name";
    cmd1.Parameters.AddWithValue("@Name", textBox1.Text);
    con.Open();

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

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