exchanging

چرا رکورد ثبت نمیشه؟

شروع موضوع توسط ma_christian ‏22 فوریه 2008 در انجمن asp , ASP.NET

  1. ma_christian

    ma_christian Registered User

    تاریخ عضویت:
    ‏25 ژانویه 2007
    نوشته ها:
    366
    تشکر شده:
    2
    محل سکونت:
    Tehran
    سلام ؛ من از کد زیر برای ثبت رکورد در سی شارپ استفاده می کنم. نمی دانم چرا رکورد ثبت نمیشه. یعنی وقتی که میخواهیم پارامتری رو مقدار دهی کنیم ثبت نمیشه ولی در کوئری های ساده ی اس کیو ال رکورد ثبت میشه.

    ممنون میشوم راهنمایی کنید.
    البته مشکل از strDate نیست.

    PHP:

    using 
    (OleDbConnection connection = new OleDbConnection("...................")) 
    {
        
    connection.Open();
    OleDbCommand command = new OleDbCommand("insert into mytable values ('" strDate "', @Desc)"connection);
    command.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Desc"reqDesc.Text));
    command.ExecuteNonQuery();
    connection.Close();
                        
    }


     
  2. H_R

    H_R مدیر بازنشسته

    تاریخ عضویت:
    ‏30 مارس 2005
    نوشته ها:
    3,285
    تشکر شده:
    15
    محل سکونت:
    North Pole
  3. ma_christian

    ma_christian Registered User

    تاریخ عضویت:
    ‏25 ژانویه 2007
    نوشته ها:
    366
    تشکر شده:
    2
    محل سکونت:
    Tehran
    سلام
    راستش مشکل من این بود که من کوئری های بدون متغیر را میتوانم ثبت کنم ولی وقتی که پارامتری رو می خواهم در کوئری مقدار دهی کنم نمیشود.

    یعنی در خط:
    command.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Desc", reqDesc.Text));

    هر وقت این خط وارد کد میشود مشکل ایجاد میشود و رکورد ثبت نمیشود ولی مثلا اگر کوئری به اینصورت باشد:
    insert into myTable values('','')

    رکورد براحتی ثبت میشه. به خصوص اینکه میخواهم فارسی هم وارد کنم که از طریق همان پارامتر ها میسر است.
     
  4. ma_christian

    ma_christian Registered User

    تاریخ عضویت:
    ‏25 ژانویه 2007
    نوشته ها:
    366
    تشکر شده:
    2
    محل سکونت:
    Tehran
    منتظر هستم ... ممنون اگر کمک کنید
     
  5. ehsan707

    ehsan707 Guest

    تاریخ عضویت:
    ‏30 اکتبر 2007
    نوشته ها:
    22
    تشکر شده:
    0
    کد:
    using (OleDbConnection connection = new OleDbConnection("..................."))  
    { 
        connection.Open(); 
    OleDbCommand command = new OleDbCommand(" insert into mytable values ('" + strDate + "',"+ reqDesc.Text, connection); 
     
    command.ExecuteNonQuery(); 
    connection.Close(); 
                         
    } 
    
    
    این کار میکنه؟ البته امنیت نداره
     
  6. ma_christian

    ma_christian Registered User

    تاریخ عضویت:
    ‏25 ژانویه 2007
    نوشته ها:
    366
    تشکر شده:
    2
    محل سکونت:
    Tehran
    بله کار می کنه. ولی به قول شما امنیتش پایینه و فارسی رو هم بصورت علامت سوال ثبت می کنه
     
  7. balabala

    balabala کاربر قدیمی پرشین تولز

    تاریخ عضویت:
    ‏22 می 2005
    نوشته ها:
    7,351
    تشکر شده:
    1,332
    محل سکونت:
    یه خورده اونورتر
    پیغام خطا نمیده؟
    توی کوتیشن بگذار شاید درست بشه.
     
  8. ehsan707

    ehsan707 Guest

    تاریخ عضویت:
    ‏30 اکتبر 2007
    نوشته ها:
    22
    تشکر شده:
    0
    به مشکلات فارسی نویسی و تاپیکهای مربوط به امنیت مراجعه کنید