Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7 8 9 10 .. 25   вперед  Ctrl
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Bogdanov Andrey
Ну так ведь нарушение целостности вызвано именно оператором (ведь триггер у вас не на завершение транзакции срабатывает, а на вызов конкретного оператора). А вы откатывать почему-то всю транзакцию собрались.


Ну так у меня этот оператор всего навсего один из нескольких в транзакциию Я эти несколько операторов в транзакция чисто чтобы приколоться завернул? Или все-таки, чтобы они или все выполнились или все невыполнились? Я уже в третий раз Ваш спрашиваю на счет ACID.
26 авг 08, 13:22    [6109389]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Bogdanov Andrey
Member

Откуда: Да уже и сам не знаю...
Сообщений: 2203
SergSuper

Давайте на примере. Допустим вводится платежный документ. Обновляются таблицы собственно документов, проводок и остатков. Допустим в документе по одному счету делается несколько проводок, которые делают отрицательный остаток, что логикой базы не допускается. Т.е. такой документ провести нельзя. (Попутно замечу что базу в противоречивое состояние пытается ввести не оператор, а транзакция целиком) Я делаю в триггере на таблице остатков проверку, далее роллбэк, документ не проходит и все изменения откатываются.
Отлично, давайте на пример. Возьмем ваш пример и предположим, что другое приложение решило не один документ, а целую пачку провести. Оно открывает транзакцию и начинает документы сохранять. Вдруг выясняется, что один из документов по каким-то причинам не проходит - с чего вы взяли, что всю пачку надо сразу же похерить? Только один оператор - "сохранение конкретного документа" нарушает целостность, а отнюдь не вся пачка. Как именно со всей пачкой поступать - бд не знает, только приложение знает насколько данный документ критичен для всей пачки и насколько его допустимо модифицировать. Вы же со своим проектированием бд выбора приложению не оставляете.

SergSuper
Вы же предлагаете (если я правильно понял) анализировать только оператор, который сделал отрицательный остаток и только его откатывать. В результате я получу введенный документ, проводку, но остатки будут неправильными, хотя и "красивыми" - откатить единственный оператор, а не всю тр-цию недостаточно.
Ваш триггер с откатом нисколько не помешает достичь того же результата - приложение сохранит документ, проводку, скажет commit, а потом попытается модифицировать остаток и получит отлуп. Отлично и триггер с откатом есть и база кривая.
26 авг 08, 13:27    [6109417]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709

hey wrote:

> как быть, если клиент использует ORM ? Там обычно маппинг идет на таблицы
Никак. У нас таких клиентов нет.

Posted via ActualForum NNTP Server 1.4

26 авг 08, 13:29    [6109438]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
hvlad
У нас триггер вроде бы на оператор вызывается, а не на тр-цию ?


Прям как в анекдоте: "Странно, стрелял Дантес, а памятник Пушкину". Мы уже на продолжении нескольких страниц говорим, что оператор, вызвавший срабатывание триггера, не один в транзакции!

hvlad
А кто определяет - частична ли тр-ция, состоящая из более одного оператора ? Давайте запретим операторы ветвления - они ведь, о ужас, пропускают некоторые операторы !
Подумайте над выделенным словом.


Тот, кто написАл:

BEGIN TRAN
  INSERT...
  UPDATE...--а вот тут вот триггер с роллбэком есть.
  DELETE...
COMMIT

И надеется, что логика, заложенная им, а именно "или все или ничего" будет соблюдена. Вы об этом подумали?

hvlad
Скатываемся на персоналии... не хорошо...


И не думал. Высказывания мои касаются не личностей, а "методологий и принципов", предподносимых ими, как единственно верные, ибо все остальное по мнению этих личностей "моветон".

hvlad
Я Вас чем-то обидел ?


Я Вас умоляю... Я давно не в том возрасте, чтобы как маленькое дите обижаться. :)
26 авг 08, 13:34    [6109464]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Bogdanov Andrey
Member

Откуда: Да уже и сам не знаю...
Сообщений: 2203
MasterZiv
Никак. У нас таких клиентов нет.
То есть вы разрабатываете некое закрытое приложение и навязываете всем свои собственные интерфейсы доступа. Флаг в руки. Но промышленные стандарты (такие как SQL, например) как раз и созданы для того, чтобы обеспечить легкую интеграцию ПО различных производителей. Ваше право отказываться от этого (иногда это даже выгодно в денежном плане - чуть что клиент к вам прибежит кланяться), но "хорошим" такое приложение я бы не назвал.
26 авг 08, 13:36    [6109472]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Bogdanov Andrey
Отлично, давайте на пример. Возьмем ваш пример и предположим, что другое приложение решило не один документ, а целую пачку провести. Оно открывает транзакцию и начинает документы сохранять. Вдруг выясняется, что один из документов по каким-то причинам не проходит - с чего вы взяли, что всю пачку надо сразу же похерить?


А почему это должно быть в одной транзакции, если Вы изначально допускаете, что возможно неполное проведение документов???
26 авг 08, 13:37    [6109481]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Bogdanov Andrey
Но промышленные стандарты (такие как SQL, например) как раз и созданы для того, чтобы обеспечить легкую интеграцию ПО различных производителей.


И что там, в промышленных стандартах, так и написано "Роллбэк в триггере - моветон"?
26 авг 08, 13:38    [6109488]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Николай1
Member

Откуда: Москва
Сообщений: 495
Bogdanov Andrey
SergSuper

Давайте на примере. Допустим вводится платежный документ. Обновляются таблицы собственно документов, проводок и остатков. Допустим в документе по одному счету делается несколько проводок, которые делают отрицательный остаток, что логикой базы не допускается. Т.е. такой документ провести нельзя. (Попутно замечу что базу в противоречивое состояние пытается ввести не оператор, а транзакция целиком) Я делаю в триггере на таблице остатков проверку, далее роллбэк, документ не проходит и все изменения откатываются.
Отлично, давайте на пример. Возьмем ваш пример и предположим, что другое приложение решило не один документ, а целую пачку провести. Оно открывает транзакцию и начинает документы сохранять. Вдруг выясняется, что один из документов по каким-то причинам не проходит - с чего вы взяли, что всю пачку надо сразу же похерить? Только один оператор - "сохранение конкретного документа" нарушает целостность, а отнюдь не вся пачка. Как именно со всей пачкой поступать - бд не знает, только приложение знает насколько данный документ критичен для всей пачки и насколько его допустимо модифицировать. Вы же со своим проектированием бд выбора приложению не оставляете.


Для избежания подобных проблем надо писать так, что бы транзакция на пакет документов не открывалась, а открывалась на каждый документ отдельно (например). Да и вообще - включать в триггеры проверки бизнес-логики - не комильфо, ибо требования могут быть самые разные, а триггер - на всех один. Так, постепенно, вся логика в триггеры переедет. Можно, конечно, и так строить приложения, но тогда не будет и вопроса "кому отдать ошибку, возникшую в триггере".

Кстати, присоединюсь к предыдущему оратору - если я заключил что-то в транзакционные скобки, то я хочу чтобы это все выполнилось либо нет целиком. Если есть варианты выполнения, то транзакционные скобки расставляются в соответствии с этими варинтами. (то есть, транзакции объявляются только для тех блоков, которые должны быть выполнены "целиком". а между ними транзакций нет).
26 авг 08, 13:39    [6109491]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Николай1
Member

Откуда: Москва
Сообщений: 495
pkarklin
Bogdanov Andrey
Отлично, давайте на пример. Возьмем ваш пример и предположим, что другое приложение решило не один документ, а целую пачку провести. Оно открывает транзакцию и начинает документы сохранять. Вдруг выясняется, что один из документов по каким-то причинам не проходит - с чего вы взяли, что всю пачку надо сразу же похерить?


А почему это должно быть в одной транзакции, если Вы изначально допускаете, что возможно неполное проведение документов???


Апередил....
26 авг 08, 13:42    [6109507]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
hey
Guest
hvlad
Это сговор

вам уже которую страницу пытаются обьяснить, что триггеры используются для поддержания целостности данных БД, они в этом смысле ничем не отличаются от декларативной ссылочной целостности.
Простой пример - клиент с заказами и сумма денег на счету клиента. По бизнес-правилам нельзя допустить ситуации, когда суммарная стоимость всех заказов клиента превышает сумму на его счету. На таблицу с заказами вешается триггер, который при вставке/апдейте заказа сверяет суммарную стоимость всех заказов с суммой на счету.
Что вы будете делать, если я открою таблицу в enterprise manager'e и впишу туда заказ на миллион долларов ?
26 авг 08, 13:48    [6109559]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
hey
вам уже которую страницу пытаются обьяснить, что триггеры используются для поддержания целостности данных БД, они в этом смысле ничем не отличаются от декларативной ссылочной целостности.


Осмелюсь напомнить времена, когда DRI, например, не было и в помине, и RI поддерживали именно на триггерах.
26 авг 08, 13:49    [6109571]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
pkarklin
hey
вам уже которую страницу пытаются обьяснить, что триггеры используются для поддержания целостности данных БД, они в этом смысле ничем не отличаются от декларативной ссылочной целостности.


Осмелюсь напомнить времена, когда DRI, например, не было и в помине, и RI поддерживали именно на триггерах.


Это высказывание относится не к Вам hey, а к Bogdanov Andrey и hvlad. Ваша цитата использована "в тему". Спасибо!
26 авг 08, 13:51    [6109582]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Dihotom
Member

Откуда:
Сообщений: 453
pkarklin
pkarklin
hey
вам уже которую страницу пытаются обьяснить, что триггеры используются для поддержания целостности данных БД, они в этом смысле ничем не отличаются от декларативной ссылочной целостности.


Осмелюсь напомнить времена, когда DRI, например, не было и в помине, и RI поддерживали именно на триггерах.


Это высказывание относится не к Вам hey, а к Bogdanov Andrey и hvlad. Ваша цитата использована "в тему". Спасибо!

В случае нарушения декларативных ограничений транзакция не откатывается, а выбрасывается исключение, которое может быть перехвачено и обработано. Логично ту же логику использовать и для триггеров, поддерживающих целостность.

SergSuper
Давайте на примере. Допустим вводится платежный документ. Обновляются таблицы собственно документов, проводок и остатков. Допустим в документе по одному счету делается несколько проводок, которые делают отрицательный остаток, что логикой базы не допускается. Т.е. такой документ провести нельзя. (Попутно замечу что базу в противоречивое состояние пытается ввести не оператор, а транзакция целиком) Я делаю в триггере на таблице остатков проверку, далее роллбэк, документ не проходит и все изменения откатываются.

А теперь давайте предположим, что логика приложения меняется и все подобные документы всё-таки нужно провести, но на величину остатка, а оставшуюся сумму вынести на внебаланс. В случае с откатом в триггере Вам придется найти и изменить все триггеры, которые участвуют в проверке суммы документа (а их в сложных случаях может быть много) и изменить их. В случае же, если эти триггеры бросают исключения, нужно внести изменение в одном единстенном обработчике исключений и не откатывать в нём транзакцию как ранее, а инициировать ввод двух документов в соответствии с изменнной бизнес-логикой.

Что касается многочисленных требований предоставить стандарт на слои в информационной системе. Стандарта нет, но есть мысли умных людей, которым нет предпосылок не доверять: например, Мартин Фаулер "Архитектура корпоративных программных приложений". Если будут ссылки на статьи/книги, указывающие минусы слоистой модели и плюсы других подходов - приводите буду рад ознакомиться.
26 авг 08, 14:10    [6109715]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dihotom
В случае нарушения декларативных ограничений транзакция не откатывается, а выбрасывается исключение, которое может быть перехвачено и обработано. Логично ту же логику использовать и для триггеров, поддерживающих целостность.


Ну, тогда, м.б. Вы ответите на вопрос, зачем заворачивать три оператора в транзакцию, если Вы заранее допускаете возможность, что не все из них м.б. выполнены?

Т.е. почему не из приведенного ранее

BEGIN TRAN
  INSERT...
  UPDATE...--а вот тут вот триггер с роллбэком есть.
  DELETE...
COMMIT

выкинуть совсем BEGIN\COMMIT?
26 авг 08, 14:14    [6109749]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
Bogdanov Andrey

SergSuper
Вы же предлагаете (если я правильно понял) анализировать только оператор, который сделал отрицательный остаток и только его откатывать. В результате я получу введенный документ, проводку, но остатки будут неправильными, хотя и "красивыми" - откатить единственный оператор, а не всю тр-цию недостаточно.
Ваш триггер с откатом нисколько не помешает достичь того же результата - приложение сохранит документ, проводку, скажет commit, а потом попытается модифицировать остаток и получит отлуп. Отлично и триггер с откатом есть и база кривая.

Я это специально не написал, думал и так понятно - имеется в виду что ввод документа, проводки и обновление остатков в одной транзакции и если триггер обрубит транзакцию - откатится всё.

Хотелось бы узнать как Вы рашаете такие задачи.
26 авг 08, 14:18    [6109797]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dihotom
А теперь давайте предположим, что логика приложения меняется и все подобные документы всё-таки нужно провести, но на величину остатка, а оставшуюся сумму вынести на внебаланс. В случае с откатом в триггере Вам придется найти и изменить все триггеры, которые участвуют в проверке суммы документа (а их в сложных случаях может быть много) и изменить их. В случае же, если эти триггеры бросают исключения, нужно внести изменение в одном единстенном обработчике исключений и не откатывать в нём транзакцию как ранее, а инициировать ввод двух документов в соответствии с изменнной бизнес-логикой.


Простите, но Вы так же скатывается на уровень демагогии. Вы, почему то, постулируете, что триггеров много, а обработчик исключения один и в одном месте. Так не пойдет...
26 авг 08, 14:23    [6109851]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Dihotom
Member

Откуда:
Сообщений: 453
pkarklin
Dihotom
В случае нарушения декларативных ограничений транзакция не откатывается, а выбрасывается исключение, которое может быть перехвачено и обработано. Логично ту же логику использовать и для триггеров, поддерживающих целостность.


Ну, тогда, м.б. Вы ответите на вопрос, зачем заворачивать три оператора в транзакцию, если Вы заранее допускаете возможность, что не все из них м.б. выполнены?

Т.е. почему не из приведенного ранее

BEGIN TRAN
  INSERT...
  UPDATE...--а вот тут вот триггер с роллбэком есть.
  DELETE...
COMMIT

выкинуть совсем BEGIN\COMMIT?

Не понял... Смысл транзакции в чём? Перевод БД из одного согласованного состояния в другое (согласованное). И если подобный перевод обеспечивает только совокупность операторов, то я их заверну в транзакцию. Но решать откатывать её или нет будет не она сама (т.к. она не обладает достаточной для этого информацией), а код, её инициировавший.
26 авг 08, 14:26    [6109875]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54784

pkarklin

Ну, тогда, м.б. Вы ответите на вопрос, зачем заворачивать три оператора
в транзакцию, если Вы заранее допускаете возможность, что не все из них
м.б. выполнены?

А Вы не допускаете, что бизнес-логикой может предписываться
достаточность выполнения только двух операторов из трёх?
START TRANSACTION;
INSERT ...
INSERT ...
если на данном этапе нарушение PK, то
UPDATE ...
UPDATE ...
COMMIT;

Posted via ActualForum NNTP Server 1.4

26 авг 08, 14:28    [6109900]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dihotom
Не понял... Смысл транзакции в чём? Перевод БД из одного согласованного состояния в другое (согласованное). И если подобный перевод обеспечивает только совокупность операторов, то я их заверну в транзакцию. Но решать откатывать её или нет будет не она сама (т.к. она не обладает достаточной для этого информацией), а код, её инициировавший.


Какой еще "инициирующий код"?! Вот весь код, который должен выполнится\невыполнится целиком?
26 авг 08, 14:29    [6109910]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
Dihotom

А теперь давайте предположим, что логика приложения меняется и все подобные документы всё-таки нужно провести, но на величину остатка, а оставшуюся сумму вынести на внебаланс. В случае с откатом в триггере Вам придется найти и изменить все триггеры, которые участвуют в проверке суммы документа (а их в сложных случаях может быть много) и изменить их. В случае же, если эти триггеры бросают исключения, нужно внести изменение в одном единстенном обработчике исключений и не откатывать в нём транзакцию как ранее, а инициировать ввод двух документов в соответствии с изменнной бизнес-логикой.
Давайте не будем уходить в строну. Остаток получается отрицательным, всю транзакцию надо откатить. Что Вы в этом случае делаете?

Dihotom
Что касается многочисленных требований предоставить стандарт на слои в информационной системе. Стандарта нет, но есть мысли умных людей, которым нет предпосылок не доверять: например, Мартин Фаулер "Архитектура корпоративных программных приложений". Если будут ссылки на статьи/книги, указывающие минусы слоистой модели и плюсы других подходов - приводите буду рад ознакомиться.
Выглядит как "я тут купил одну книгу, так там написано что Вы все дураки". Давайте не прикрываться чужими именами, а высказывать свои мысли. Ведь не факт же что Вы эти книги поняли правильно
26 авг 08, 14:30    [6109919]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
hvlad
Member

Откуда:
Сообщений: 11553
pkarklin
hvlad
У нас триггер вроде бы на оператор вызывается, а не на тр-цию ?


Прям как в анекдоте: "Странно, стрелял Дантес, а памятник Пушкину". Мы уже на продолжении нескольких страниц говорим, что оператор, вызвавший срабатывание триггера, не один в транзакции!
Именно ! Так почему же триггер должен определять судьбу всей тр-ции (т.е. и других операторов) ?

pkarklin
hvlad
А кто определяет - частична ли тр-ция, состоящая из более одного оператора ? Давайте запретим операторы ветвления - они ведь, о ужас, пропускают некоторые операторы !
Подумайте над выделенным словом.


Тот, кто написАл:
Правильно, тот, кто написал вызывающий код, а не тот, кто написал триггер.

pkarklin
BEGIN TRAN
  INSERT...
  UPDATE...--а вот тут вот триггер с роллбэком есть.
  DELETE...
COMMIT

И надеется, что логика, заложенная им, а именно "или все или ничего" будет соблюдена. Вы об этом подумали?
Дык пусть он и думает ! Об том и речь !
Если он не в состоянии\не приучен думать, то пусть включает XACT_ABORT...


pkarklin
hvlad
Скатываемся на персоналии... не хорошо...


И не думал. Высказывания мои касаются не личностей, а "методологий и принципов", предподносимых ими, как единственно верные, ибо все остальное по мнению этих личностей "моветон".
Гм, чем вам методология-то не угодила ?
А вот принцип ACID, который тоже "единственно верный", будем отрицать тоже ? :)

pkarklin
hvlad
Я Вас чем-то обидел ?


Я Вас умоляю... Я давно не в том возрасте, чтобы как маленькое дите обижаться. :)
Ну, будем считать, что мне показалось :)
26 авг 08, 14:30    [6109924]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dimitry Sibiryakov
INSERT ...
если на данном этапе нарушение PK, то


Жестко. А как на счет сделать проверку (IF EXISTS()), и по ее результатам решить, что делать INSERT или UPDATE?! MERGE, наконец!
26 авг 08, 14:32    [6109938]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Dihotom
Member

Откуда:
Сообщений: 453
pkarklin
Dihotom
А теперь давайте предположим, что логика приложения меняется и все подобные документы всё-таки нужно провести, но на величину остатка, а оставшуюся сумму вынести на внебаланс. В случае с откатом в триггере Вам придется найти и изменить все триггеры, которые участвуют в проверке суммы документа (а их в сложных случаях может быть много) и изменить их. В случае же, если эти триггеры бросают исключения, нужно внести изменение в одном единстенном обработчике исключений и не откатывать в нём транзакцию как ранее, а инициировать ввод двух документов в соответствии с изменнной бизнес-логикой.


Простите, но Вы так же скатывается на уровень демагогии. Вы, почему то, постулируете, что триггеров много, а обработчик исключения один и в одном месте. Так не пойдет...

Хорошо, согласен, обработчиков должно быть столько, сколько точек инициирования транзакции. Но всё же - в случае подобного изменения бизнес-логики каковы будут Ваши действия? Не в триггере же Вы будете иницировать ввод новых документов? Кроме того, в некоторых случаях мне требуется реально откатить ввод подобного документа, а в некоторых - уменьшить его сумму и всё-таки завершить транзакцию. Задача тривиально решается, если взять за правило в случае нарушения целостности сигнализировать об этом исключением, а не откатом транзакции.
26 авг 08, 14:32    [6109942]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
DBA-шник
Guest
pkarklin
DBA-шник
hvlad
Ну вот ораклисты здесь тоже упорно против такого, чего бы это ? ;)

+100
:)


Ну, так это уже всем наевший оскомину баян: "Раз в Оракле этого нет, значит этого никому не надо".



Вот и определился Ваш порог вхождения в индустрию: у вас неверные знания, что хуже незнания.

Вы даже не потрудились заглянуть в документацию. Управление транзакциями в триггерах ORACLE есть.

Теперь вопрос: вписываться ли в концепцию РСУБД программный продукт, если в контексте приложения у него на все курсоры 1 переменная состояния?
26 авг 08, 14:34    [6109957]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь  [new]
Dihotom
Member

Откуда:
Сообщений: 453
pkarklin
Dihotom
Не понял... Смысл транзакции в чём? Перевод БД из одного согласованного состояния в другое (согласованное). И если подобный перевод обеспечивает только совокупность операторов, то я их заверну в транзакцию. Но решать откатывать её или нет будет не она сама (т.к. она не обладает достаточной для этого информацией), а код, её инициировавший.


Какой еще "инициирующий код"?! Вот весь код, который должен выполнится\невыполнится целиком?

Любой код кем-то или чем-то запускается. И транзакция тоже. Инициирующий код - это внешний по отношению к транзакции код, который её запускает.
26 авг 08, 14:35    [6109968]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7 8 9 10 .. 25   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить