Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
answer99
0 / 0 / 1
Регистрация: 15.03.2012
Сообщений: 29
1

Автоматическое добавление нескольких записей в базу при выполнении условия

22.03.2012, 15:20. Просмотров 748. Ответов 5
Метки нет (Все метки)

Всем привет! Имеются 2 связанные таблицы 'залоговые билеты' и 'операции' . в таблице "залог.билеты"
имеется поле отображающее "дату возврата" и если "дата возврата" совпадает с системной то этому билету присваивается статус "к реализации"
C#
1
2
 db.ExecuteQuery(@"set dateformat DMY; " +
                @" update Zalbil set status=3 where status not in(2,3,4) and dateVozv='" + DateTime.Now.Date.ToString("dd.MM.yy") + "'");
Хочу сделать чтобы после этого автоматически добавлялась операция к реализации по этому билету.
Так как билетов удовлетворяющих условие может быть несколько видимо необходим какой то цикл
прошу помочь с организацией правильного запроса)) или хотя бы поделится соображениями на этот счет
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.03.2012, 15:20
Ответы с готовыми решениями:

Добавление записей в базу
sOTRYDNIKTableAdapter.Connection.Open(); ...

Добавление записей в базу данных
Добрый день ! Делаю базу данных в visual studio 2017. И столкнулся с такой...

Добавление в базу данных, обновление записей
Делаю приложение для БД в C#. Подключил базу, сделал TextBox, в котором...

Вывод, сохранение изменений, добавление новых записей в базу MS SQLCE 4.0
Доброе время суток, задам изъезженный вопрос наверное в 100 раз, но решение...

Ошибка при добавлении записей в базу SQL
Есть процедура на серве InsertTypePayment Вот код ее ALTER PROCEDURE ....

5
Learx
1046 / 853 / 194
Регистрация: 31.03.2010
Сообщений: 2,490
22.03.2012, 15:53 2
Прежде всего добавь в таблицу билетов столбец-идентификатор(желательно автоинкримент) -Id

1.делаешь выборку билетов с их датой возврата - загружаешь её в DataTable.
2. проходишь по строчкам полученной таблицы, и для тех билет у которых нужная дата делаешь Update прямым запросом (нужный билет найдешь по id)
0
answer99
0 / 0 / 1
Регистрация: 15.03.2012
Сообщений: 29
22.03.2012, 16:35  [ТС] 3
Поле такое есть "номер залогового билета" С таблицей залоговых билетов проблем нет все обновляется.
Вопрос как быть с таблицей операций.
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
declare @nzb NUMERIC(9,2);
declare @dateop datetime;
declare @numop int;
declare @kodop INT;
declare @kolday int;
declare @sumop decimal(10,2);
set @nzb= (select nzb from Zalbil where Zalbil.[status]=3 and nzb=100002);
set @dateop=GETDATE();
set @numop = (SELECT max (numop) from operzb where nzb=100002);
set @numop=@numop+1;
set @kodop=3;
set @kolday=(select kolday from operzb where nzb=100002);
set @sumop=(select sumop from operzb where nzb=100002);
insert INTO Operzb (nzb,dateop,numop,kodop,kolday,sumop) 
VALUES(@nzb,@dateop,@numop,@kodop,@kolday,@sumop)
вот этим кодом добавляется запись но это если знаешь какой именно билет
0
Learx
1046 / 853 / 194
Регистрация: 31.03.2010
Сообщений: 2,490
22.03.2012, 17:00 4
закинь этот код в процедуру с параметром "номер билета" и вызывай ее для обновления данных
0
answer99
0 / 0 / 1
Регистрация: 15.03.2012
Сообщений: 29
22.03.2012, 17:15  [ТС] 5
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
CREATE PROCEDURE dbo.Insert_Oper
@numnzb INTEGER
AS
BEGIN
DECLARE @nzb NUMERIC(9,2);
DECLARE @dateop datetime;
DECLARE @numop INT;
DECLARE @kodop INT;
DECLARE @kolday INT;
DECLARE @sumop DECIMAL(10,2);
SET @nzb= (SELECT nzb FROM Zalbil WHERE Zalbil.[STATUS]=3 AND nzb=@nzb);
SET @dateop=GETDATE();
SET @numop = (SELECT MAX (numop) FROM operzb WHERE nzb=@nzb);
SET @numop=@numop+1;
SET @kodop=3;
SET @kolday=(SELECT kolday FROM operzb WHERE nzb=@nzb);
SET @sumop=(SELECT sumop FROM operzb WHERE nzb=@nzb);
INSERT INTO Operzb (nzb,dateop,numop,kodop,kolday,sumop) 
VALUES(@nzb,@dateop,@numop,@kodop,@kolday,@sumop)
END
Подскажи как в программе указать параметр. И как будет происходить поиск если нужно добавить операции в несколько билетов
0
Learx
1046 / 853 / 194
Регистрация: 31.03.2010
Сообщений: 2,490
22.03.2012, 17:27 6
запрос вызова процедуры выглядит так:

SQL
1
"Имя_процедуры(@пар1, @пар2 ...)"
подробнее про выполнение команд к бд

про параметры в запросе тут и тут
0
22.03.2012, 17:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.03.2012, 17:27

C# DataGridView - добавление в базу при редактировании датагрида
Помогите... есть база даных подключеная к датагриду все работает при запуске...

Обновление datagridview при добавление в БД новых записей
Здравствуйте. Сейчас у меня при загрузке приложения заполняется datagridview....

Добавление и удаление из БД (ошибка при нескольких повторных запросах)
Добрый день. Помогите пожалуйста решить проблему. Есть ActionLink, при нажатии...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru