Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Проблема с Update в C#. / 4 сообщений из 4, страница 1 из 1
19.08.2010, 12:23:18
    #36799823
sanchoX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с Update в C#.
Здравствуйте, помогите пожалуйсто вроде всё перепробывал, может у кого глаз намётанный увидит, что не так)

Имееться грид с которого я перезаписываю данные в БД, первое значение из грида записывает нормально, на втором уже выдаёт ошибку. Пробывал сделать так чтобы он одно и тоже значение перезаписывал, всё равно на втором шаге цикла по j - ошибка.



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
  SqlConnection myConnection = new SqlConnection(con.ConStr);

               

            try
            {

                myConnection.Open();

                for (int i =  1 ; i < Grid1.RowCount; i++)
                {
                    string DateSql = Convert.ToString(Grid1.Rows[i].Cells[ 0 ].Value) + " " + Convert.ToString(Grid1.Rows[i].Cells[ 135 ].Value);

                    DateTime dateSQL;


                    dateSQL = Convert.ToDateTime(DateSql);

                    SqlCommand myCommandUpdateValues = new SqlCommand(" DECLARE @ID_LOG int 
 DECLARE @ID_PAR int
  SELECT @ID_LOG = Id_logfile FROM  dbo.logfile WHERE name_file = @NAME_FILE  
SELECT @ID_PAR = Id_param FROM  dbo.conform WHERE Id_conform = @ID_J  
UPDATE dbo.msrs  SET msr_value = @MSR_VALUE  WHERE id_param = @ID_PAR AND Id_logfile=@ID_LOG AND msr_time = @TIME", myConnection);



                    myCommandUpdateValues.Parameters.Add("@TIME", SqlDbType.DateTime);
                    myCommandUpdateValues.Parameters["@TIME"].Value = dateSQL;
                    myCommandUpdateValues.Parameters.Add("@NAME_FILE", SqlDbType.Char);
                    myCommandUpdateValues.Parameters["@NAME_FILE"].Value = label1.Text;



                    for (int j =  1 ; j < Grid1.ColumnCount -  7 ; j++)
                    {




                        myCommandUpdateValues.Parameters.Add("@ID_J", SqlDbType.Int);
                        myCommandUpdateValues.Parameters["@ID_J"].Value = j;

                        myCommandUpdateValues.Parameters.Add("@MSR_VALUE", SqlDbType.VarChar);
                        myCommandUpdateValues.Parameters["@MSR_VALUE"].Value = Convert.ToString(Grid1.Rows[i].Cells[j].Value);




                        myCommandUpdateValues.ExecuteNonQuery();

                    }

                }
                
             
            }

            catch (Exception ex)
            {
                MessageBox.Show("Failed");
            }
                  finally
                  {
                      myConnection.Close();
                  }

ПС. Сам запрос разбил на части чтобы удобней смотреть было, так то он в одну строку.
...
Рейтинг: 0 / 0
19.08.2010, 12:39:43
    #36799885
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с Update в C#.
Не делайте так никогда. Двабалла детектед. Никогда не делайте на клиенте в цикле перезапрос. А хуже всего, что Вы делаете это на основании какого-то грида, который есть только представление Ваших данных, имеющий, кстати, ещё много свойств и методов.
...
Рейтинг: 0 / 0
19.08.2010, 13:24:47
    #36800026
sanchoX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с Update в C#.
А какие варианты есть вообще перезапрос сделать кроме цикла? Хранимую процедуру, что ли написать или какие есть варианты. А грид в массив лучше?
...
Рейтинг: 0 / 0
20.08.2010, 11:21:21
    #36802090
=NIk=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с Update в C#.
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Проблема с Update в C#. / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]