2 / 2 / 0
Регистрация: 24.11.2010
Сообщений: 11
1

Выполнение хранимой процедуры в цикле

09.02.2012, 09:30. Показов 1627. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
нужно создать одну "главную" таблицу, и неопределенное количество вспомогательных таблиц, с ключом от главной таблицы. Первая процедура проходит, при выполнении процедуры в цикле, выполнение уходит в catch, и откат транзакции.

C#
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
SqlTransaction txn = sqlconn.BeginTransaction(System.Data.IsolationLevel.Serializable);
            try 
            {
                
 
                sqlcomm.CommandType = CommandType.StoredProcedure;
                sqlcomm.CommandText = "AddTP1";
                //добавление параметров процедуры 
                key = Convert.ToInt32(sqlcomm.ExecuteScalar()); //этот ключ будет испольхзоваться в таблицах добавляемых в цикле
                
 
 
        for ( int i = 0; i < dataGridView1.RowCount-1; i++)
                {
                   
                        sqlcomm.CommandText = "AddTP2";
                       //добавление параметров второй процедуры
                        sqlcomm.Parameters["@key"].Value = key;
                        
                        sqlcomm.ExecuteNonQuery();//c этой строчки уходит в catch
                        
                    
                    }
                
                
                }
                MessageBox.Show("Ok");
                txn.Commit();
            }
 
            catch (Exception ex)
            {
                txn.Rollback();
                MessageBox.Show("Не удалось внести изменения");
 
            }
            finally
            {
                sqlconn.Close();
 
            }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.02.2012, 09:30
Ответы с готовыми решениями:

Передача массива в Oracle в качестве входного параметра хранимой процедуры
Доброго времени суток. В Oracle (8i) у меня есть пакет (MyPackage) с процедурой procedure...

Выполнение хранимой процедуры с выходными параметрами
В базе данных MS SQL есть хранимая процедура Come с выходными параметрами (output) @e1, @e2 типа...

Вызов хранимой процедуры
Добрый день У меня есть процедура хранимая в MySQL на добавление строки CREATE DEFINER =...

Создание хранимой процедуры в C#
Есть БД в SQL. Интерфейс создается на C#. Как создать такую хранимую процедуру: CREATE PROC...

1
970 / 773 / 171
Регистрация: 12.04.2009
Сообщений: 1,700
09.02.2012, 12:29 2
o my got. вы хоть знаете причину исключения? если нет. то просто вывидите это сообщение.
C#
1
2
3
4
5
6
7
catch (Exception ex)
 {
     txn.Rollback();
     MessageBox.Show(ex.ToString());
     // or
     MessageBox.Show(ex.Message);
}
и вас самого не смущает то, что ключ вы получаете вне цикла?
0
09.02.2012, 12:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.02.2012, 12:29
Помогаю со студенческими работами здесь

Отчет из хранимой процедуры
Подскажите, как в Visual Studio 2010 создать отчет на основе хранимой процедуры? код процедуры ...

Вызов хранимой процедуры в с#
Хочу обновить бд с помощью хранимой процедуры ALTER procedure . @id_TP int, @id_worker int, @DT...

Вызов хранимой процедуры
Привет! У меня есть база данных и запрос, написанный на SQL в сишарпе. Таблица из базы данных...

Вызов хранимой процедуры
Как вызвать хранимую процедуру в БД Access через Viasual Studio 2015 Community. Хранимые процедуры:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru