Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.10.09;
Скачать: [xml.tar.bz2];

Вниз

Обнуление генератора в InterBase   Найти похожие ветки 

 
ruslan_as   (2003-09-20 09:57) [0]

Как правильно программно обнуляется счетчик генератора?

Я пытаюсь сделать так:
DM.IBQUPDATE.SQL.Clear;
DM.IBQUPDATE.SQL.Add("SET GENERATOR IDTMP TO 0");
DM.IBQUPDATE.ExecSQL;

Не ругается, но и не обнуляет.

Пытаюсь сделать так:
DM.IBQTMP.GeneratorField.IncrementBy:=0;
Тоже не срабатывает.


 
stud   (2003-09-20 10:27) [1]

а использовать для этого ibsql не пробовал?


 
Sergey_Masloff   (2003-09-20 10:55) [2]

ruslan_as ©
да все правильно вроде делаешь. Транзакцию подтверди и наслаждайся.


 
jack128   (2003-09-20 11:10) [3]


> да все правильно вроде делаешь. Транзакцию подтверди и наслаждайся

Вообще я думал, что генераторы вне контекста транзакций работают?
Или это только gen_id() касается???
В любом случае второй вариант gen_id(gen_name,-gen_id(gen_name,0));


 
Sergey_Masloff   (2003-09-20 12:34) [4]

jack128 © (20.09.03 11:10) [3]

>> да все правильно вроде делаешь. Транзакцию подтверди и наслаждайся

>Вообще я думал, что генераторы вне контекста транзакций работают?

Ну да. Только манипуляции генераторами это DDL и как любой DDL требует подтверждения транзакции в которой проведен.


 
jack128   (2003-09-20 13:41) [5]


> Ну да. Только манипуляции генераторами это DDL и как любой
> DDL требует подтверждения транзакции в которой проведен.

Сейчас следственный эксперемент провел. Генератору абсолютно пофигу подтвердил ты транзакцию, ролбэкнул или вообще не завершил. Он УЖЕ изменил свое значение, так что и в этой и любой другой транзакции будет использоваться его новое значение...


 
Zacho   (2003-09-20 14:55) [6]


> jack128 © (20.09.03 13:41) [5]

А эксперимент был с GEN_ID или с SET GENERATOR ?
GEN_ID - DML, SET GENERATOR - DDL.


 
jack128   (2003-09-20 18:54) [7]

с set generator. В IBExpert"е проводился эксперемент. В одном окне скуль едитора set generator gen_address_id to 1 (текущ. значение было 0) в другом select gen_id(gen_address_id) from rdb$database


 
Sergey_Masloff   (2003-09-21 14:03) [8]

Zacho ©, (20.09.03 14:55) [6]
jack128 © (20.09.03 13:41) [5]

Да, похоже на то. В смысле меняется без транзакции. Я сначала думал что в IBExperte стоит в начтройка что-то вроде AutoCommitDDL, тем более что-то он коммитит автоматом (видно через SQL Monitor) но не из эксперта результат тот же.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.10.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
3-27334
Maxs
2003-09-20 16:34
2003.10.09
Модификация логических полей в DBGrid компонентом ChekBox


1-27511
xGhost
2003-09-26 14:33
2003.10.09
Как можно причитать текст в определёном заголовке ?


3-27316
viktor
2003-09-15 19:32
2003.10.09
Удаление записи в справочнике


1-27441
MIKL
2003-09-28 10:22
2003.10.09
Скомпилированный HTML-файл справки


3-27360
Apollo
2003-09-19 13:01
2003.10.09
Фильтрация





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский