Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.11.2009, 16:16   #1
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию Сохранение в dataGridView

Есть dataGridView1 данные туда подгружаютса с таблицы базы данных!
Как сохранить изменение в базе данных вручную измененые в dataGridView1??????
Cpluser вне форума Ответить с цитированием
Старый 04.11.2009, 18:33   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Смотря что за база и как ты с ней работаешь?
Hollander вне форума Ответить с цитированием
Старый 05.11.2009, 10:36   #3
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

С ms sql!На dataGridView1 выбираю Choose Data Source!Есть какаето функция типа updat.
Cpluser вне форума Ответить с цитированием
Старый 05.11.2009, 10:41   #4
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Код:
string customerid = ((Label)dgi.FindControl("IDLabel")).Text;
string address = ((Label)dgi.FindControl("AddressLabel")).Text;
SqlConnection conn = new SqlConnection(your_connectionstring);
conn.Open();
SqlCommand comm = new SqlCommand("insert into [table] values (" + customerid + ",'" + address + "')", conn);
comm.ExecuteNonQuery();
conn.Close();
Hollander вне форума Ответить с цитированием
Старый 05.11.2009, 10:54   #5
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

Чтото ошибок куча:
The name 'dgi' does not exist in the current context
The name 'dgi' does not exist in the current context
The best overloaded method match for 'System.Data.SqlClient.SqlCommand.S qlCommand(string, System.Data.SqlClient.SqlConnection )' has some invalid arguments
Argument '2': cannot convert from 'System.Data.OleDb.OleDbConnection' to 'System.Data.SqlClient.SqlConnectio n'
Код:
string customerid = ((Label)dgi.FindControl("IDLabel")).Text;
            string address = ((Label)dgi.FindControl("AddressLabel")).Text;
            string connect = "Provider=SQLOLEDB;Data Source=ALEX;Integrated Security=SSPI;Initial Catalog=base1";
            OleDbConnection conn = new OleDbConnection(connect);
            conn.Open();
            SqlCommand comm = new SqlCommand("insert into [table] values (" + customerid + ",'" + address + "')", conn);
            comm.ExecuteNonQuery();
            conn.Close();
Cpluser вне форума Ответить с цитированием
Старый 05.11.2009, 13:12   #6
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Это же пример, тебе нужно сделать следующее:
Собрать все поля, который ты хочешь записать в базу. В примере, customerid и address это поля которые есть в базе. У тебя поля другие. dgi - форма, на которой ищется компонент Label с именем IDLabel и т.д. Тебе это не надо. Ты работаешь с DataGridView, поэтому тебе нужно собрать поля из своего грида.

По поводу The best overloaded method match for 'System.Data.SqlClient.SqlCommand.S qlCommand(string, System.Data.SqlClient.SqlConnection )' has some invalid arguments
Argument '2': cannot convert from 'System.Data.OleDb.OleDbConnection' to 'System.Data.SqlClient.SqlConnectio n' долго писать. Посмотри как делается тут: http://www.csharphelp.com/archives/archive236.html
Hollander вне форума Ответить с цитированием
Старый 06.11.2009, 12:10   #7
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

Код:
     private void button2_Click(object sender, EventArgs e)
        {
           string customerid = ((Label)Form1.FindControl("IDLabel")).Text;
            string address = ((Label)Form1.FindControl("AddressLabel")).Text;
            string connect = "Provider=SQLOLEDB;Data Source=ALEX;Integrated Security=SSPI;Initial Catalog=base1";
            OleDbConnection conn = new OleDbConnection(connect);
            conn.Open();
            SqlCommand comm = new SqlCommand("insert into [xz] values (" + ch + ",'" + id + "')", conn);
            comm.ExecuteNonQuery();
            conn.Close();
        }
Где ошибки???
Cpluser вне форума Ответить с цитированием
Старый 06.11.2009, 12:16   #8
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Так, а в чем проявляется ошибка?
Hollander вне форума Ответить с цитированием
Старый 06.11.2009, 12:19   #9
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

'VS.Form1' does not contain a definition for 'FindControl'
'VS.Form1' does not contain a definition for 'FindControl'
The name 'ch' does not exist in the current context
The name 'id' does not exist in the current context
Cpluser вне форума Ответить с цитированием
Старый 06.11.2009, 13:37   #10
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Какая у тебя структура базы?

Метода такого нету.
'VS.Form1' does not contain a definition for 'FindControl'
'VS.Form1' does not contain a definition for 'FindControl'

Ты не объявил эти переменные.
The name 'ch' does not exist in the current context
The name 'id' does not exist in the current context
Hollander вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
datagridview ttwork Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 4 06.01.2012 06:28
DataGridView bondik Общие вопросы .NET 2 13.05.2009 19:42
c# + datagridview MAcK Общие вопросы .NET 2 06.06.2008 15:57