PDA

View Full Version : update datagrid view



help man
دوشنبه 19 فروردین 1387, 00:38 صبح
با سلام من برنامه زیر رو نوشتم ولی یک مشکلی که داره اینه که با زدن باتوم بایستی تغییرات داخل دیتا گرید ویو داخل بانکم انجام بشه که این اتفاق نمیفته لطفا اشکال کار برنامم رو بگید ممنوم با تشکر

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using System.Data.Sql;
namespace sql3
{
publicpartialclassForm1 : Form
{
// SqlConnection objconnection = new SqlConnection();
SqlDataAdapter objadapter = newSqlDataAdapter();
DataSet objdataset = newDataSet();
public Form1()
{
InitializeComponent();
}
privatevoid Form1_Load(object sender, EventArgs e)
{

objadapter.SelectCommand = newSqlCommand();
objadapter.SelectCommand.Connection = sqlConnection1;
objadapter.SelectCommand.CommandText=("Select ali from people where ali >1 order by ali asc ");
objadapter.SelectCommand.CommandType = CommandType.Text;
sqlConnection1.Open();
objadapter.Fill(objdataset,"people");
sqlConnection1.Close();
dataGridView1.AutoGenerateColumns = true;
dataGridView1.DataSource = objdataset;
dataGridView1.DataMember = "people";
}
privatevoid dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
privatevoid button1_Click(object sender, EventArgs e)
{

DataTable objDataSet = newDataTable();

SqlCommandBuilder cb = newSqlCommandBuilder(objadapter);
sqlConnection1.Open();
objadapter.Update(objdataset, "people");
sqlConnection1.Close();

}
}
}

Yama12
دوشنبه 19 فروردین 1387, 08:34 صبح
دوست عزیز سلام
اگر جستجو میکردید به راحتی پیدا میکردید جوابتون رو
شما باید بعد از انجام تغییرات یعنی در متد button1_click()باید دو قطعه کد زیر رو در ادامه اون بنویسید و احتیاج به کدی که نوشتید نیست



objdataset.Clear();
objadapter.Fill(Objdataset,"people");

xxxxxxxxxx
دوشنبه 19 فروردین 1387, 19:02 عصر
سلام .
1-


objadapter.SelectCommand.Connection = sqlConnection1;

sqlConnection1 را کجا مقدار دهی ومعرفی کردید؟
2-
قبل از


objadapter.Update(objdataset, "people");

باید


objadapter=cb.DataAdapter;

استفاده کنید تا دستورات لازم جهت insert ,update,...در objadapter ساخته شود.
امیدوارم مشکل حل شود.

Developer Programmer
جمعه 18 بهمن 1387, 11:12 صبح
کار این Builder ها (مثل CommandBuilder) دقیقا چیه؟ هرچی از MSDN میخونم متوجه نمیشم!

راستی، وقتی ما به Select و Delete و Update از SqlCommand مقدار دادیم و بعد Execute رو فراخوانی کردیم. کدومیک از این 3 متد اجرا میشن؟!




' Create the SelectCommand.
Dim command As SqlCommand = New SqlCommand( _
"SELECT * FROM Customers " & _
"WHERE Country = @Country AND City = @City", connection)

' Add the parameters for the SelectCommand.
adapter.SelectCommand = command

' Create the InsertCommand.
command = New SqlCommand( _
"INSERT INTO Customers (CustomerID, CompanyName) " & _
"VALUES (@CustomerID, @CompanyName)", connection)

adapter.InsertCommand = command

' Create the UpdateCommand.
command = New SqlCommand( _
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " & _
"WHERE CustomerID = @oldCustomerID", connection)

adapter.UpdateCommand = command

' Create the DeleteCommand.
command = New SqlCommand( _
"DELETE FROM Customers WHERE CustomerID = @CustomerID", connection)

' Add the parameters for the DeleteCommand
adapter.DeleteCommand = command