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

Вниз

ALTER TABLE в InterBase   Найти похожие ветки 

 
Vitaly Grobshtein   (2002-11-30 23:16) [0]

Мне нужно добавить поле в таблицу IB и заполнить его данными. Сделать это нужно в рамках одной транзакции ( с возможностью отката).
Проблема в том, что после Alter table новое поле недоступно до commit.

Есть ли решение этой проблемы?


 
AK-74   (2002-12-01 01:48) [1]

Необходимо установить уровень разграничения транзакции READ COMMITTED.
Например, двойным щелчком на IBTransaction. Или "SET TRANSACTION READ COMMITTED".


 
Vitaly Grobshtein   (2002-12-01 14:06) [2]

Так и установлено.
Read Commited влияет на видимость записей, обновленных ДРУГИМИ транзакциями. Мне же нужно увидеть поле, созданное ТЕКУЩЕЙ транзакцией. Подозреваю, что решение связано с подтверждением обновления системных таблиц, но как это сделать, не завершая транзакции?


 
AK-74   (2002-12-01 15:28) [3]

Да, видимо DDL инструкции надо обязательно подтверждать.
А если так: добавляем поле, commit, заполняем данными, нормально - commit, ошибка - drop столбец. Вот и весь rollback.


 
Ihor Osov'yak   (2002-12-01 18:53) [4]

Боюсь сказать глупость, но я как то на уровне подсознания запечатлил себе в памяти, что в документации по IB видел, что крайне неприветсвуется изменение метаданных, когда есть другие транзакции... На практике получал проблемы только в том случае, когда применял альтер к обьектам, которые задействонаны в других
активных транзакциях. Ой, о чем это я... Думаю, что ничего более умного, чкм предложено AK-74 © (01.12.02 15:28) вряд - ли придумается ...
Зы fido7.ru.delphi.db - там много толковых спецов по IB
Или сразу в http://www.ibase.ru ...


 
AK-74   (2002-12-01 19:03) [5]

И еще: обычно таблицы при эксплуатации растут в длину... А в ширину - не могу представить такой необходимости


 
kostik78ua   (2002-12-01 19:19) [6]

Насколько я себе представляю Alter table происходит ВНЕ транзакций.


 
AK-74   (2002-12-01 20:17) [7]

>kostik78ua (01.12.02 19:19)

Занимательная гипотеза...



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

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

Наверх





Память: 0.45 MB
Время: 0.007 c
6-61739
TDI
2002-10-25 19:32
2002.12.19
Как узнать маску подсети ?


6-61734
krai
2002-10-21 15:44
2002.12.19
POP3 сервер


3-61510
Scorp
2002-12-02 23:01
2002.12.19
Как безболезненно установить базу данных на другой комп


14-61824
Странник Рокапопса
2002-11-29 18:46
2002.12.19
Проблема игр в ХР


7-61848
Ins
2002-10-16 14:14
2002.12.19
Програмирование модема





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский