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

نام تاپیک: update کردن جدول

  1. #1

    update کردن جدول

    فیلدهای یک جدول به TextBoxهای برنامه Bind شده. بعد از تغییرات داده ها توسط کاربر و زدن دکمه Update تغییراتی که در Dataset ثبت شده به table منتقل نمی شود.
    SqlDataAdapter.Update(dataset1,"tableName"&#41  ;;

    ولی تغییرات رو در DataGrid نمایش می دهد.

    مگر اینکه دستی داده ها رو منتقل کنم. یعنی:
    dataSet1.Tables["tableName"].Rows[1&#9  3;[0]=textBox1.Text;

    هیچ error ای هم نمی دهد. :sad2:

  2. #2
    چرا از Stored Procedure استفاده نمی کنی؟

  3. #3
    چه جوری می تونم از Store Procure استفاده کنم؟
    (من فقط می خواهم تغییراتی که در dataset شده رو Update کنم.)

  4. #4
    سلام

    مثال stored procedure


    CREATE PROCEDURE UpdateProduct
    @OldProductID int,
    @NewProductName nvarchar(40),
    @NewUnitPrice money,
    @OldProductName nvarchar(40),
    @OldUnitPrice money
    AS

    -- update the row in the Products table
    UPDATE Products
    SET
    ProductName = @NewProductName,
    UnitPrice = @NewUnitPrice
    WHERE ProductID = @OldProductID
    AND ProductName = @OldProductName
    AND UnitPrice = @OldUnitPrice



    روش استفاده:

    public static void ModifyDataRow(
    DataTable myDataTable,
    int productID,
    SqlDataAdapter mySqlDataAdapter,
    SqlConnection mySqlConnection
    )
    {
    Console.WriteLine("\nIn ModifyDataRow()");

    // step 1: set the PrimaryKey property of the DataTable
    myDataTable.PrimaryKey =
    new DataColumn[]
    {
    myDataTable.Columns["ProductID"]
    };

    // step 2: use the Find() method to locate the DataRow
    // in the DataTable using the primary key value
    DataRow myEditDataRow = myDataTable.Rows.Find(productID);

    // step 3: change the DataColumn values of the DataRow
    myEditDataRow["ProductName"] = "Advanced Widget";
    myEditDataRow["UnitPrice"] = 24.99;
    Console.WriteLine("myEditDataRow.RowState = " +
    myEditDataRow.RowState);
    Console.WriteLine("myEditDataRow[\" ProductID\", " +
    "DataRowVersion.Original] = " +
    myEditDataRow["ProductID", DataRowVersion.Original]);
    Console.WriteLine("myEditDataRow[\" ProductName\", " +
    "DataRowVersion.Original] = " +
    myEditDataRow["ProductName", DataRowVersion.Original]);
    Console.WriteLine("myEditDataRow[\" UnitPrice\", " +
    "DataRowVersion.Original] = " +
    myEditDataRow["UnitPrice", DataRowVersion.Original]);
    Console.WriteLine("myEditDataRow[\" ProductName\", " +
    "DataRowVersion.Current] = " +
    myEditDataRow["ProductName", DataRowVersion.Current]);
    Console.WriteLine("myEditDataRow[\" UnitPrice\", " +
    "DataRowVersion.Current] = " +
    myEditDataRow["UnitPrice", DataRowVersion.Current]);

    // step 4: use the Update() method to push the update
    // to the database
    Console.WriteLine("Calling mySqlDataAdapter.Update()");
    mySqlConnection.Open();
    int numOfRows = mySqlDataAdapter.Update(myDataTable);
    mySqlConnection.Close();
    Console.WriteLine("numOfRows = " + numOfRows);
    Console.WriteLine("myEditDataRow.RowState = " +
    myEditDataRow.RowState);

    DisplayDataRow(myEditDataRow, myDataTable);
    }


  5. #5
    بایستی از شی BindingManagerBase استفاده کنید، یعنی پیش از Update کردن باید مقدار فیلدهای تغییر یافته به DataSet انتقال یابد. اگر فرض کنیم که نام DataAdapter شما da و نام DataSet شما ds و نام DataTable درون آن table1 باشد، برای Update کردن کد زیر را بنویسید:

    this.BindingContext[ ds, "table1" ].EndCurrentEdit();
    da.Update( ds, "table1" );


    برای اطلاعات بیشتر به MSDN، کلاس BindingManagerBase مراجعه کنید.

    سربلند باشید.

  6. #6
    سلام
    از راهنماییتان ممنونم. درست شد. :wink:
    با تشکر فراوان :flower:

  7. #7
    سلام . اگر بخوایم یک فیلد خاص از جدولمونو ویرایش کنیم چی؟ مثلا فیلد name رکوردی که آیدیش برابر 1 هست رو برابر یک مقدار رشته ای مثلا "adabyron" قرار بدیم . ممنون میشم اگر کمکم کنید با تشکر

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

  1. مشکل در دانلود JDK 5.0 Update 8 از سایت sun
    نوشته شده توسط mehrdad2 در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 11
    آخرین پست: چهارشنبه 31 تیر 1388, 16:50 عصر
  2. مشکل در Update کردن
    نوشته شده توسط alex_kh58 در بخش C#‎‎
    پاسخ: 3
    آخرین پست: چهارشنبه 11 بهمن 1385, 07:46 صبح
  3. update
    نوشته شده توسط javad0062 در بخش PHP
    پاسخ: 1
    آخرین پست: سه شنبه 07 شهریور 1385, 16:48 عصر
  4. یک سئوال در مورد Update کردن 2 جدول در Dbهای مختلف
    نوشته شده توسط mhaeri در بخش SQL Server
    پاسخ: 4
    آخرین پست: یک شنبه 29 مرداد 1385, 17:04 عصر
  5. چگونه از Update اطلاعات جداول در Ado مطلع شویم ؟
    نوشته شده توسط Mah6447 در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: یک شنبه 22 مرداد 1385, 09:05 صبح

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

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