|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
12.04.2013, 21:14 | #1 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
Transaction процедура: сделать архив, если количество столбцов не совпадает
Уважаемые форумчане, я не могу сообразить как я могу сделать трансакцию (желательно с точкой отката Rollback), если в архивной таблице столбцов больше (первый - автосчетчик записи архива, четвертый - дата архивации, также значение по default now), чем в таблице, откуда записи архивируются.
У меня в таблице Timetable расписание автобусных рейсов (вернее его состояние для диспетчера), которое должно архивироваться и обновляться. Поле status со значением 2 - водитель завершил рейс и в определенное время будет запускаться процедура и архивировать все завершенные рейсы. Я знаю нужно как-то использовать VALUES, а как это сделать граммотно в хранимой процедуре - не знаю. У меня такой код Код:
Потому что у меня в таблице Archive не две колонки (ID_record, ID_reis), а четыре (ID_archive, ID_record, ID_reis, arc_date)
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
12.04.2013, 23:03 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Blondy, а случайно триггеров на вставку для таблицы Archive ни каких нет? Или на удаление из Timetable? Может в триггерах корявый INSERT есть. В процедуре не вижу
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 12.04.2013 в 23:09. |
12.04.2013, 23:12 | #3 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
как определены ID_archive и arc_date ?
|
12.04.2013, 23:29 | #4 | |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
Дорогой Аватар, триггеров нет. Вот пока какой инсерт в самой процедуре
Код:
Цитата:
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
|
13.04.2013, 00:31 | #5 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
покажите скрипты на создание таблиц
|
13.04.2013, 15:22 | #6 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
Вот скрипты:
Код:
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
13.04.2013, 15:30 | #7 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А по-моему нужно просто убрать описания вставляемых полей
Код:
I'm learning to live...
|
13.04.2013, 16:52 | #8 | |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
Цитата:
К сожалению, сейчас проверить не могу - среда под рукой будет только вечером))
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
|
13.04.2013, 19:13 | #9 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Я бы так попробовал, почему вариант Blondy не работает не понял
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
13.04.2013, 19:22 | #10 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подсчёт в стринггриде если заполнены только первые n столбцов | _Oleg | Общие вопросы Delphi | 4 | 27.12.2012 18:03 |
В матрице m*n определить номера и количество полностью нулевых столбцов | moshensky | Общие вопросы C/C++ | 1 | 08.11.2012 16:12 |
вывод номеров столбцов матрицы и подсчитать количество этих столбцов | Vitalina69 | Помощь студентам | 2 | 15.02.2011 21:52 |
Как получить количество столбцов из выборки | ssdm | Java Базы данных (JDBC, JPA, Hibernate) | 1 | 25.01.2010 19:21 |
Подскажите что делать если в екселе пропали буквы столбцов | ivkoa | Microsoft Office Excel | 2 | 22.07.2008 16:55 |