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

نام تاپیک: علت ایراد Incorrect syntax near 'e'.

  1. #1

    Post علت ایراد Incorrect syntax near 'e'.

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

    string str;
    str = "Data Source=.\\SQLEXPRESS;AttachDbFilename=\"C:\\Progra m Files\\Microsoft SQL Server\\MSSQL.1\\MSSQL\\Data\\STUDENT.mdf\";Integr ated Security=True;Connect Timeout=30;User Instance=True";
    SqlConnection my_con = new SqlConnection(str);
    my_con.Open();
    SqlCommand my_cm = new SqlCommand("insert into PERSON(NAME,FAMILY)values('"+textBox1.Text+"','"+t extBox2.Text+"'",my_con);
    my_cm.ExecuteNonQuery();
    my_con.Close();
    اما موقع اجرا ارور زیر رو می ده:

    Incorrect syntax near 'e'.
    ایرادش چی می تونه باشه؟ ممنون میشم راهنماییم کنید

  2. #2
    کاربر دائمی آواتار myazdani
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    سن
    36
    پست
    293

    نقل قول: علت ایراد Incorrect syntax near 'e'.

    دوست عزيز
    تو نوشتن textbox2 بين حروفش فاصله افتاده.

  3. #3
    کاربر تازه وارد آواتار barnamenevisjma
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    بجنورد
    پست
    93

    نقل قول: علت ایراد Incorrect syntax near 'e'.

    توصیه می کنم بجای اینکار، از PlaceHolderها استفاده کنید:


    SqlCommand my_cm = new SqlCommand();
    my_cm.CommandText = "INSERT INTO PERSON (NAME,FAMILY) VALUES(@name,@family)";
    my_cm.Parameters.AddWithValue("@name", texttextbox1.text);
    my_cm.Parameters.AddWithValue("@family", textbox2.text);
    my_cm.Connection = my_con;


    موفق باشید.

  4. #4
    کاربر تازه وارد آواتار akarsu
    تاریخ عضویت
    فروردین 1389
    پست
    78

    نقل قول: علت ایراد Incorrect syntax near 'e'.

                SqlConnection con1 = new SqlConnection();
    con1.ConnectionString = str1;
    con1.Open();
    SqlCommand cm1 = new SqlCommand();
    cm1.CommandText = "insert into PERSON(NAME,FAMILY)" +
    "values(N'" + textBox1.Text + "',N'" + textBox2.Text + "')";
    cm1.Connection = con1;
    cm1.ExecuteNonQuery();
    con1.Close();
    آخرین ویرایش به وسیله akarsu : جمعه 31 تیر 1390 در 10:59 صبح

  5. #5

    نقل قول: علت ایراد Incorrect syntax near 'e'.

    نقل قول نوشته شده توسط barnamenevisjma مشاهده تاپیک
    توصیه می کنم بجای اینکار، از PlaceHolderها استفاده کنید:


    SqlCommand my_cm = new SqlCommand();
    my_cm.CommandText = "INSERT INTO PERSON (NAME,FAMILY) VALUES(@name,@family)";
    my_cm.Parameters.AddWithValue("@name", texttextbox1.text);
    my_cm.Parameters.AddWithValue("@family", textbox2.text);
    my_cm.Connection = my_con;


    موفق باشید.
    ممنون از پاسختون ولی به نظرتون اون کد کجاش ایراد داره که اون ایراد رو می گیره؟

  6. #6
    مدیر بخش آواتار salehbagheri
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    In Hearts
    سن
    34
    پست
    2,225

    نقل قول: علت ایراد Incorrect syntax near 'e'.

    ممنون از پاسختون ولی به نظرتون اون کد کجاش ایراد داره که اون ایراد رو می گیره؟
    اون کد مشکلش خیلی واضح بود! پرانتز انتهایی دستور Insert رو نگذاشته بودید!

    برای پیشگیری از بروز چنین خطاهایی سعی کنید دستورات SQL رو داخل خود DataBase به صورت Procedure ذخیره کنید!
    امیدم به دستان زیبای اوست . آنکه می آید . همان که نامش منجی ست ....

    به راستی اگر غرق نبودیم چرا مارا به منجی ای نیازمند کرده اند؟ ... دنیا دریاست ....

    دلنوشته های من


  7. #7

    نقل قول: علت ایراد Incorrect syntax near 'e'.

    نقل قول نوشته شده توسط salehbagheri مشاهده تاپیک
    اون کد مشکلش خیلی واضح بود! پرانتز انتهایی دستور Insert رو نگذاشته بودید!

    برای پیشگیری از بروز چنین خطاهایی سعی کنید دستورات SQL رو داخل خود DataBase به صورت Procedure ذخیره کنید!
    ببخشید میشه یکم توضیح بدین منظورتون کدوم پرانتز بود؟ این کدیه که من نوشتم؟

    SqlCommand my_cm = new SqlCommand("insert into PERSON(NAME,FAMILY)values('"+textBox1.Text+"','"+t extBox2.Text+"'",my_con);

  8. #8
    مدیر بخش آواتار salehbagheri
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    In Hearts
    سن
    34
    پست
    2,225

    نقل قول: علت ایراد Incorrect syntax near 'e'.

    اوه! مثل اینکه عمق فاجعه زیاده!
    کد زیر رو ببینید: کدی که شما نوشتید در صورت جداسازی به این صورته: (پرانتز آخر کجاست؟)


    "INSERT INTO PERSON (NAME,FAMILY) VALUES(@name,@family"
    اصلاح:
    new SqlCommand("insert into PERSON(NAME,FAMILY)values('"+textBox1.Text+"','"+t extBox2.Text+"')",my_con);
    امیدم به دستان زیبای اوست . آنکه می آید . همان که نامش منجی ست ....

    به راستی اگر غرق نبودیم چرا مارا به منجی ای نیازمند کرده اند؟ ... دنیا دریاست ....

    دلنوشته های من


  9. #9

    نقل قول: علت ایراد Incorrect syntax near 'e'.

    نقل قول نوشته شده توسط salehbagheri مشاهده تاپیک
    اوه! مثل اینکه عمق فاجعه زیاده!
    کد زیر رو ببینید: کدی که شما نوشتید در صورت جداسازی به این صورته: (پرانتز آخر کجاست؟)


    "INSERT INTO PERSON (NAME,FAMILY) VALUES(@name,@family"
    اصلاح:
    new SqlCommand("insert into PERSON(NAME,FAMILY)values('"+textBox1.Text+"','"+t extBox2.Text+"')",my_con);
    درسته ممنون حق با شما بود اما حالا یک مشکل دیگه پرانتز رو که اضافه کردم دیگه از executequery() ایراد نمی گیره اما وقتی برنامه اجرا می شه و داده ای رو وارد می کنم داده توی بانک نشون داده نمی شه داده دومی رو که وارد می کنم داده اولی و دومی هر دو نشون داده می شن یعنی داده های زوج رو که وارد می کنم داده زوج وارد شده و داده قبلیش نشون داده می شن ! ایراد کار کجاست؟ کدی کم هست؟

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

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