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

نام تاپیک: ویرایش اطلاعات ثبت شده در دیتابیس

  1. #1
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    ویرایش اطلاعات ثبت شده در دیتابیس

    سلام..
    من تو ادیت اطلاعات زمانی که مثلاً یه جایی می خوام شمارههائی رو اتومات بزنه مشکل دارم.یعنی کاربر وارد نکنه . زمانی که مثلا ID رو (به فرض شماره سرویس) رو دستی وارد میکردم مشکلی واسه ویرایش ندارم..
    به عکس دقت کنید
    sshot-265.jpg

    الان که عدد ID دستم نیست تو UpdateQuery در DataDet هم ویرایش رو براساس اینکه باید ID رو وارد کنید گذاشتم اینم کداش..


    UPDATE [dbo].[Tbl_ajance] SET [Name_ajance] = @Name_ajance, [Admin_ajance] = @Admin_ajance, [Adress] = @Adress, [Tel1] = @Tel1, [Tel2] = @Tel2
    WHERE ([ID] = @Original_ID);
    SELECT ID, Name_ajance, Admin_ajance, Adress, Tel1, Tel2 FROM Tbl_ajance
    WHERE (ID = @ID)


    الان این کد رو چجوری واردکنم که سیستم خطا نگیره
    این کد ویرایشه:

    MoshtarakDataSetTableAdapters.Tbl_ajanceTableAdapt er ajc = new MoshtarakDataSetTableAdapters.Tbl_ajanceTableAdapt er();
    tbl_ajanceTableAdapter1.UpdateQuery(؟؟؟؟؟؟؟ ؟؟؟؟)

    اینم اسم تکست باکس:
    (txt_name_ajance, txt_name_modir, txt_adress, txt_tel1 txt_Tel2)
    txt_id هم برای واردکردن شماره اتومات گذاشتم رو فرم زمانی که بخوام ویرایش کنم
    اینم کد insert:جهت اطلاع


    MoshtarakDataSetTableAdapters.Tbl_ajanceTableAdapt er ajc = new MoshtarakDataSetTableAdapters.Tbl_ajanceTableAdapt er();
    tbl_ajanceTableAdapter1.InsertQuery(txt_name_ajanc e.Text, txt_name_modir.Text, txt_adress.Text, txt_tel1.Text, txt_Tel2.Text);




  2. #2
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    لازم نیست آی دی رو دستی وارد کنی
    اگه توی فرمت دیتا گرید داری با استفاده از اندیس سطر انتخابی آی دی رو می تونی خیلی راحت واکشی کنی
    int ID = Convert.ToInt16(dataGridView1.SelectedRows[0].Cells[0].Value);

    بعد به اون آی دی که بدست آوردی اشاره کنی
    MoshtarakDataSetTableAdapters.Tbl_ajanceTableAdapt  er ajc = new MoshtarakDataSetTableAdapters.Tbl_ajanceTableAdapt  er();
    tbl_ajanceTableAdapter1.UpdateQuery(ID)
    آخرین ویرایش به وسیله khokhan : چهارشنبه 16 مرداد 1392 در 09:14 صبح

  3. #3
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نقل قول نوشته شده توسط khokhan مشاهده تاپیک
    لازم نیست آی دی رو دستی وارد کنی
    اگه توی فرمت دیتا گرید داری با استفاده از اندیس سطر انتخابی آی دی رو می تونی خیلی راحت واکشی کنی
    int ID = Convert.ToInt16(dataGridView1.SelectedRows[0].Cells[0].Value);

    بعد به اون آی دی که بدست آوردی اشاره کنی
    MoshtarakDataSetTableAdapters.Tbl_ajanceTableAdapt  er ajc = new MoshtarakDataSetTableAdapters.Tbl_ajanceTableAdapt  er();
    tbl_ajanceTableAdapter1.UpdateQuery(ID)
    اره گرید هست تو فرم
    بازم خطامیده
    نباید کاره دیگه انجام بدم..؟
    اون DataSet رو نمیخواد دستکاری بشه؟
    اصلا این کدها رو باید تو همین باتن "ثبت" قرار بدم یا یه باتن دیگه به اسم دیگه؟
    sshot-267.jpg

  4. #4
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نقل قول نوشته شده توسط messi13 مشاهده تاپیک
    اره گرید هست تو فرم
    بازم خطامیده
    نباید کاره دیگه انجام بدم..؟
    اون DataSet رو نمیخواد دستکاری بشه؟
    اصلا این کدها رو باید تو همین باتن "ثبت" قرار بدم یا یه باتن دیگه به اسم دیگه؟
    sshot-267.jpg
    این نمونه با entity Model فکر کنم مشکل شما رو مرتفع کنه حذف و اضافه و ویرایش و فراخوانی همه رو توش گذاشتم

    آپدیت با استفاده از دریافت id از ردیف انتخابی گرید هست و البته راههای زیادی برای این منظور هست که یکیش این روشه
    فایل های ضمیمه فایل های ضمیمه
    • نوع فایل: rar ef1.rar‏ (422.2 کیلوبایت, 62 دیدار)

  5. #5
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    داداش این خطاء مال چیه
    مال foreach
    sshot-269.jpg

  6. #6
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نقل قول نوشته شده توسط messi13 مشاهده تاپیک
    داداش این خطاء مال چیه
    مال foreach
    توضیحات مربوط به اون ارور در پایین صفحه چیه اونوارو بگذار " عزیز !!! ما چه علم غیب نداریم "
    یا یه ااسکرین شات از کل صفحه بگذار که بالا وپایین کدها معلوم باشه
    هرچند احتمالا یه کروشه کم یازیاده

  7. #7
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نه کروشه مشکل ندارند
    این توضیح foreach
    Error 20 Cannot convert type 'Final.MoshtarakDataSet.Tbl_ajanceRow' to 'Final.Tbl_ajance' C:\Users\AS@L\Documents\Visual Studio 2010\Projects\Final\Final\Form_ajance.cs 69 13 Final
    اینم مال دومی

    Error 21 'Final.MoshtarakDataSet' does not contain a definition for 'SaveChanges' and no extension method 'SaveChanges' accepting a first argument of type 'Final.MoshtarakDataSet' could be found (are you missing a using directive or an assembly reference?) C:\Users\AS@L\Documents\Visual Studio 2010\Projects\Final\Final\Form_ajance.cs 84 21 Final
    sshot-270.jpg

  8. #8
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    اینم کدها:


    private void buttonX2_Click(object sender, EventArgs e)
    {


    int ID = Convert.ToInt16(dataGridView1.CurrentRow.Cells[0].Value);
    MoshtarakDataSet context = new MoshtarakDataSet();



    var query = from data in context.Tbl_ajance

    orderby data.ID

    select data;



    foreach (Tbl_ajance details in query)
    {

    if (details.ID == ID)
    {
    details.Name_ajance = txt_name_ajance.Text;
    details.Admin_ajance = txt_name_modir.Text.ToString();
    details.Adress = txt_adress.Text.ToString();
    details.Tel1 = txt_tel1.Text.ToString();
    details.Tel2 = txt_Tel2.Text.ToString();
    details.Adress = txt_adress.Text.ToString();
    }

    }

    context.SaveChanges();
    getData();
    }

  9. #9
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نقل قول نوشته شده توسط messi13 مشاهده تاپیک
    نه کروشه مشکل ندارند
    این توضیح foreach
    اینم مال دومی



    sshot-270.jpg
    برنامه رو با linq نوشتی یا با entity ?????
    میتونی یه تصویر از Solution Explorer بگذاری ؟

  10. #10
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    با linq می خواستم با entity اجرا کنم کل فرمهام نزدیک 500 خطا داد که بی خیال شدم..

    sshot-272.jpg

  11. #11
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نقل قول نوشته شده توسط messi13 مشاهده تاپیک
    با linq می خواستم با entity اجرا کنم کل فرمهام نزدیک 500 خطا داد که بی خیال شدم..

    [ATTACH=CONFIG][/ATTACH]
    پس با این حساب دستور آپدیتتون بایستی شبیه این باشه

    private void button1_Click(object sender, EventArgs e)
    {
    int ID = Convert.ToInt16(dataGridView1.CurrentRow.Cells[0].Value);
    MoshtarakDataSet context = new MoshtarakDataSet();
    var matchedCustomer = (from c in context.GetTable<Tbl_ajance>()
    where c.id == ID
    select c).SingleOrDefault();

    Tbl_ajance cust = new Tbl_ajance();
    matchedCustomer.Name_ajance = txt_name_ajance.Text;
    matchedCustomer.Admin_ajance = txt_name_modir.Text.ToString();
    matchedCustomer.Adress = txt_adress.Text.ToString();
    matchedCustomer.Tel1 = txt_tel1.Text.ToString();
    matchedCustomer.Tel2 = txt_Tel2.Text.ToString();
    matchedCustomer.Adress = txt_adress.Text.ToString();



    context.SubmitChanges();
    }
    آخرین ویرایش به وسیله khokhan : چهارشنبه 16 مرداد 1392 در 17:48 عصر

  12. #12
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    تقریبا ولی بیشتر از طریق Detaset کئوری میسازم

    sshot-273.jpg
    و در مرحله ایجاد کیئوری این کدها رو واسه آپدیت میذارم
    UPDATE [dbo].[Tbl_ajance] SET [Name_ajance] = @Name_ajance, [Admin_ajance] = @Admin_ajance, [Adress] = @Adress, [Tel1] = @Tel1, [Tel2] = @Tel2 WHERE ((@IsNull_Name_ajance = 1 AND [Name_ajance] IS NULL) OR ([Name_ajance] = @Original_Name_ajance)) AND ((@IsNull_Admin_ajance = 1 AND [Admin_ajance] IS NULL) OR ([Admin_ajance] = @Original_Admin_ajance)) AND ((@IsNull_Adress = 1 AND [Adress] IS NULL) OR ([Adress] = @Original_Adress)) AND ((@IsNull_Tel1 = 1 AND [Tel1] IS NULL) OR ([Tel1] = @Original_Tel1)) AND ((@IsNull_Tel2 = 1 AND [Tel2] IS NULL) OR ([Tel2] = @Original_Tel2)));
    SELECT ID, Name_ajance, Admin_ajance, Adress, Tel1, Tel2 FROM Tbl_ajance WHERE (ID = @ID)
    وفرمت کلی کدها هم واسه ویرایش به صورت زیر.
    البته این کد رو تو این پروژه استفاده نکردم


    private void EDIT_Click(object sender, EventArgs e)
    {

    MoshtarakDataSetTableAdapters.tbl_MoshtarakTableAd apter ajance = new MoshtarakDataSetTableAdapters.tbl_MoshtarakTableAd apter();
    try
    {
    tbl_MoshtarakTableAdapter.UpdateQuery(Convert.ToIn t32(txtcode_mosh.Text), txtname.Text, txtfname.Text, txtaddress.Text, txttel.Text, Convert.ToInt32(txtcode_mosh.Text));

    this.tbl_MoshtarakTableAdapter.Fill(this.moshtarak DataSet.tbl_Moshtarak);
    MessageBox.Show("اطلاعات با موفقیت ویرایش شد");
    }
    catch
    {
    MessageBox.Show("کد مشترک را وارد کنید", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    }
    }

  13. #13
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    تقریبا ولی بیشتر از طریق Detaset کئوری میسازم
    به نظرم توخود فرم این کارو بکنی بهتره
    موفق باشی

  14. #14
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نقل قول نوشته شده توسط khokhan مشاهده تاپیک
    پس با این حساب دستور آپدیتتون بایستی شبیه این باشه

    private void button1_Click(object sender, EventArgs e)
    {
    int ID = Convert.ToInt16(dataGridView1.CurrentRow.Cells[0].Value);
    MoshtarakDataSet context = new MoshtarakDataSet();
    var matchedCustomer = (from c in context.GetTable<Tbl_ajance>()
    where c.id == ID
    select c).SingleOrDefault();

    Tbl_ajance cust = new Tbl_ajance();
    matchedCustomer.Name_ajance = txt_name_ajance.Text;
    matchedCustomer.Admin_ajance = txt_name_modir.Text.ToString();
    matchedCustomer.Adress = txt_adress.Text.ToString();
    matchedCustomer.Tel1 = txt_tel1.Text.ToString();
    matchedCustomer.Tel2 = txt_Tel2.Text.ToString();
    matchedCustomer.Adress = txt_adress.Text.ToString();



    context.SubmitChanges();
    }

  15. #15
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نقل قول نوشته شده توسط messi13 مشاهده تاپیک
    اون جا که نوشتی :
    MoshtarakDataSet context = new MoshtarakDataSet();

    عوضش کن اینطوری بنویس :

    myDataDataContext context  = new myDataDataContext();

  16. #16
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    این هم کدهای ویرایش شما در یه پروژه با linq
    فایل های ضمیمه فایل های ضمیمه

  17. #17
    کاربر تازه وارد آواتار messi13
    تاریخ عضویت
    اردیبهشت 1390
    پست
    83

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    ممنون دقیقا همون کدهاست با تغییرات اندک که دادید
    فقط برا ویرایش باید بر روی جدول یا بهتر بگم سطر مربوطه کلیک کنیم بعد تغییرات رو اعمال کنیم..
    یه جاهائی که مثلا شماره ها زیاد هستند..بشه تو یه تکست باکس یه سرچ زد یا مثلا شماره رو تو تکس باکس وارد کرد بعد ویرایش انجام بشه..
    بالاخره از یه روش جواب گرفتیم..
    آخرین ویرایش به وسیله messi13 : پنج شنبه 17 مرداد 1392 در 04:24 صبح

  18. #18
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: ویرایش اطلاعات ثبت شده در دیتابیس

    نقل قول نوشته شده توسط messi13 مشاهده تاپیک
    تقریبا ولی بیشتر از طریق Detaset کئوری میسازم

    sshot-273.jpg
    و در مرحله ایجاد کیئوری این کدها رو واسه آپدیت میذارم
    وفرمت کلی کدها هم واسه ویرایش به صورت زیر.
    البته این کد رو تو این پروژه استفاده نکردم



    private void EDIT_Click(object sender, EventArgs e)
    {

    MoshtarakDataSetTableAdapters.tbl_MoshtarakTableAd apter ajance = new MoshtarakDataSetTableAdapters.tbl_MoshtarakTableAd apter();
    try
    {
    tbl_MoshtarakTableAdapter.UpdateQuery(Convert.ToIn t32(txtcode_mosh.Text), txtname.Text, txtfname.Text, txtaddress.Text, txttel.Text, Convert.ToInt32(txtcode_mosh.Text));

    this.tbl_MoshtarakTableAdapter.Fill(this.moshtarak DataSet.tbl_Moshtarak);
    MessageBox.Show("اطلاعات با موفقیت ویرایش شد");
    }
    catch
    {
    MessageBox.Show("کد مشترک را وارد کنید", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    }
    }
    با سلام
    تعداد آرگومان تعریف شده در کوئری داخل دیتاست با تعداد متغیر متناظربا آرگومانها در فرم مربوطه بایستی همخوانی داشته باشند
    درضمن برای ویرایش دو عدد فیلد اونهمه کد اضافی لازم نیست تمام چیزی که بایستی در query builder بنویسین اینه :

    query.JPG



    این هم نمونه برنامه شما با اجرای کوئری در داخل دیتاست همراه باورود داده ، ویرایش داده و حذف داده و کلی مخلفات ذیربط

    ایدکم ا.. جمیعا
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله khokhan : جمعه 18 مرداد 1392 در 15:32 عصر

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

  1. پاسخ: 1
    آخرین پست: دوشنبه 31 تیر 1392, 22:43 عصر
  2. سوال: مقدار دادن به DateTimePicker از طریق اطلاعات ثبت شده در دیتابیس
    نوشته شده توسط Ship Storm در بخش VB.NET
    پاسخ: 1
    آخرین پست: یک شنبه 22 بهمن 1391, 18:19 عصر
  3. چاپ اطلاعات ثبت شده در فرم
    نوشته شده توسط ashkanjoon در بخش Access
    پاسخ: 3
    آخرین پست: پنج شنبه 20 تیر 1387, 22:47 عصر
  4. دسترسی به آخرین اطلاعات درج شده در دیتابیس
    نوشته شده توسط first_squit در بخش C#‎‎
    پاسخ: 3
    آخرین پست: سه شنبه 01 آبان 1386, 16:59 عصر
  5. Update اطلاعات ثبت شده بر روی سرور
    نوشته شده توسط tabib_m در بخش MySQL
    پاسخ: 20
    آخرین پست: پنج شنبه 28 مهر 1384, 01:05 صبح

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

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