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

نام تاپیک: خطای Data type mismatch در اجرای کوئری

  1. #1

    خطای Data type mismatch در اجرای کوئری

    در این کد من می خوام کاربر با کلیک روی هر سطر دیتا گرید و انتخاب دکمه ویراش اطلاعات در تکست باکس ها نمایش بده ولی خطای زیر رو میده چطور باید حلش کنم ( واقع اگه یه تکست باکس جدا بزارم مثلا ای دی رو وارد کنم این کار انجام میشه ولی نمی خوام این کارو انجام بدم)

    Untitled.jpg

    و سوال دیگم اینه که چکار کنم عکسم از توی دیتا بیس تو محل مورد نظر نمایش داده بشه بجای این خط کد چی بنویسم

    com.CommandText = "select * from tb_us where id ='" + id + "'";

    OleDbDataReader dr;



    con.Open();

    dr = com.ExecuteReader();


    if (dr.Read())



    {


    txt_name.Text = dr["fname"].ToString();

    txt_family.Text = dr["family"].ToString();

    txt_father.Text = dr["father"].ToString();

    txt_national.Text = dr["idcode"].ToString();

    txt_post.Text = dr["code"].ToString();

    txt_mobil.Text = dr["mobil"].ToString();

    txt_mail.Text = dr["email"].ToString();

    //picUser.Image =dr["pic"];اینجا چی بنویسم



    }

  2. #2

    نقل قول: مشکل این کد در اجرا چیست؟(عمل ویرایش در سی شارپ با پایگاه داده اکسس)

    دوستان مشکل بالا مربوط به خطا رو با جستجوی فراوان پیدا کردم حالا سوالم اینه که تفاوت این دو خط در چی هست
    مرسی
    با این کد به درستی انجام میشه

    com.CommandText = "select * from tb_us where id =" +dataGridView1.CurrentRow.Cells[0].Value;

    با این کد زیر خطا می داد

    int id = (int)dataGridView1.CurrentRow.Cells[0].Value;
    com.CommandText = "select * from tb_us where id = '" + id + "'";

  3. #3

    نقل قول: مشکل این کد در اجرا چیست؟(عمل ویرایش در سی شارپ با پایگاه داده اکسس)

    اگر نام و نام خانوادگی و نام پدر و .... در دیتاگرید هست نیازی نیست دوباره روی دیتابیس کوئری بزنید.

    اگر یک مقدار توجه کنید متوجه تفاوت میشد. تفاوت این دو در تک کوتیشن هایی هست که در کوئری گذاشتید در حالی که id رشته نیست بلکه عدده.

  4. #4

    نقل قول: مشکل این کد در اجرا چیست؟(عمل ویرایش در سی شارپ با پایگاه داده اکسس)

    مدیر عزیز پس اگر در قسمت دوم هم اگر این طور می نوشتم درست بود
    com.CommandText = "select * from tb_us where id = " + id
    ;

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

  5. #5

    نقل قول: مشکل این کد در اجرا چیست؟(عمل ویرایش در سی شارپ با پایگاه داده اکسس)

    نقل قول نوشته شده توسط vid4259 مشاهده تاپیک
    مدیر عزیز پس اگر در قسمت دوم هم اگر این طور می نوشتم درست بود
    com.CommandText = "select * from tb_us where id = " + id
    ;

    پس میشه بگیم اگر کلید ما بنا به دلایلی عدد نباشه بلکه تکست باشه اون موقع اون کد درست اجرا می شد
    کودری به این شکل درسته. ولی چون id ستونی عددی هست نباید دارای کاراکتر غیرعددی باشه. اگر داشته باشه sqlserver استثناء تولید میکنه. الته چون از دیتاگرید دریافت میشه نگران نباشید. اگر id از کاربر دریافت بشه باید چک کنید فقط عدد وارد شده باشه.

تاپیک های مشابه

  1. Data type mismatch Error در Select اطلاعات
    نوشته شده توسط kasmaii61 در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 8
    آخرین پست: سه شنبه 07 شهریور 1402, 19:36 عصر
  2. خطای تایم اوت در زمان اجرای کوئری
    نوشته شده توسط ozzy_mra در بخش C#‎‎
    پاسخ: 0
    آخرین پست: سه شنبه 08 آذر 1390, 09:17 صبح
  3. سوال: مشکل در Data type mismatch in criteria expression.
    نوشته شده توسط mehran5 در بخش VB.NET
    پاسخ: 2
    آخرین پست: یک شنبه 15 فروردین 1389, 00:35 صبح
  4. خطای Data type mismatch in criteria expression. در انتخاب چک باکس
    نوشته شده توسط bahar_engineer در بخش C#‎‎
    پاسخ: 2
    آخرین پست: سه شنبه 26 آبان 1388, 10:00 صبح
  5. خطای Data type mismatch در select
    نوشته شده توسط benyamin mirzai در بخش ASP.NET Web Forms
    پاسخ: 8
    آخرین پست: سه شنبه 21 آبان 1387, 16:08 عصر

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

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