IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.
Модератор: kdv
-
kinnegan
- Сообщения: 4
- Зарегистрирован: 30 июн 2005, 13:40
Сообщение
kinnegan » 20 мар 2006, 12:49
Доброго времени суток! Возможно этот вопрос уже неоднократно обсуждался, и даже подробно описан в документации, но поиск по форуму ничего недал, поэтому спрашиваю

Вобщем ситуация следующая. В строке статуса IBExpert появляется сообщение, что "Осталось столько-то изменений таблицы". И когда этот счетчик становиться 0 - таблица перестает меняться. Я понимаю что при этом можно сделать backup/restore и все такое. Собственно вопрос - без backup/restore как-нибудь можно снова обнулить этот счетчик? Просто в приложении которое я пишу у пользователя время от времени бывает необходимость удалить очень много полей (2-3 сотни). Я запихал эти операции в одну транзакцию и стало полегче, но! Я так понимаю что всеравно этот счетчик медленно но верно увеличивается, что неочень хорошо. И как отследить его состояние из программы я незнаю. Вот собственно.
-
Merlin
- Динозавр IB/FB
- Сообщения: 1502
- Зарегистрирован: 27 окт 2004, 11:44
Сообщение
Merlin » 20 мар 2006, 13:17
1. За писательство приложений, а которых пользователи управляют метаданными, дают 3 года расстрелу и каждый день до смерти.
2. Сбросить счётчик изменений таблицы можно либо путём b/r базы либо drop/create таблицы.
3. Отследить можно помедировав над структурой таблиц rdb$relations и rdb$formats. Полезешь менять - убьёшь базу насмерть.
-
kinnegan
- Сообщения: 4
- Зарегистрирован: 30 июн 2005, 13:40
Сообщение
kinnegan » 20 мар 2006, 13:48
Осознал свою вину. Меру, степень, глубину

Спасибо за информацию, придется делать каждый день б/р
-
Slava Ekimov
- Сообщения: 44
- Зарегистрирован: 26 окт 2004, 14:30
Сообщение
Slava Ekimov » 20 мар 2006, 13:55
kinnegan писал(а):Осознал свою вину. Меру, степень, глубину

Спасибо за информацию, придется делать каждый день б/р
А пункт 1 прочитал? Говорю один раз - ты пишешь дурацкую программу.
-
SAMZ
- Сообщения: 128
- Зарегистрирован: 21 мар 2005, 08:17
Сообщение
SAMZ » 20 мар 2006, 14:19
Slava Ekimov писал(а):kinnegan писал(а):Осознал свою вину. Меру, степень, глубину :-(
Спасибо за информацию, придется делать каждый день б/р
А пункт 1 прочитал? Говорю один раз - ты пишешь дурацкую программу.
Все же интересно, что за задача такая, в которой надо вносить на уровне пользователя и регулярно сотни изменений в метаданные
-
Slava Ekimov
- Сообщения: 44
- Зарегистрирован: 26 окт 2004, 14:30
Сообщение
Slava Ekimov » 20 мар 2006, 14:27
SAMZ писал(а):Slava Ekimov писал(а):kinnegan писал(а):Осознал свою вину. Меру, степень, глубину

Спасибо за информацию, придется делать каждый день б/р
А пункт 1 прочитал? Говорю один раз - ты пишешь дурацкую программу.
Все же интересно, что за задача такая, в которой надо вносить на уровне пользователя и регулярно сотни изменений в метаданные
Это когда человек не знает, что данные строками хранятся, а не столбцами

-
Zhur
- Сообщения: 125
- Зарегистрирован: 01 мар 2006, 18:17
Сообщение
Zhur » 20 мар 2006, 14:35
Slava Ekimov писал(а):SAMZ писал(а):Slava Ekimov писал(а):kinnegan писал(а):Осознал свою вину. Меру, степень, глубину

Спасибо за информацию, придется делать каждый день б/р
А пункт 1 прочитал? Говорю один раз - ты пишешь дурацкую программу.
Все же интересно, что за задача такая, в которой надо вносить на уровне пользователя и регулярно сотни изменений в метаданные
Это когда человек не знает, что данные строками хранятся, а не столбцами

Весело, Слава, но все-же давайте человека выслушаем... может там новый подход?
-
Slava Ekimov
- Сообщения: 44
- Зарегистрирован: 26 окт 2004, 14:30
Сообщение
Slava Ekimov » 21 мар 2006, 09:54
Zhur писал(а):
Весело, Слава, но все-же давайте человека выслушаем... может там новый подход?
Да нет, старый это подход, перректальный.
Когда я только начинал писать бд, у меня тоже такая задача появлялась в голове - поля добавлять и удалять по мере надобности. И только через некоторое время понимаешь, появление такой задачи - это и есть подход к гландам через другое место.
-
Zhur
- Сообщения: 125
- Зарегистрирован: 01 мар 2006, 18:17
Сообщение
Zhur » 21 мар 2006, 10:01
Согласен... особенно после статьи про ООБД
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 21 мар 2006, 10:07
Согласен... особенно после статьи про ООБД
статья тут мало при чем.
с манипулированием столбцами тебе еще повезло, что IB/FB позволяет это делать на живых данных. Правда, часто бывают ситуации, когда новый столбец надо обновить, а значит обновить все данные изменяемой таблицы. В общем, динамически изменяемая структура - это караул.
-
Zhur
- Сообщения: 125
- Зарегистрирован: 01 мар 2006, 18:17
Сообщение
Zhur » 21 мар 2006, 10:09
kdv писал(а):Согласен... особенно после статьи про ООБД
статья тут мало при чем.
Но ведь статья-то по этой причине и появилась? Правда?
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 21 мар 2006, 10:17
Но ведь статья-то по этой причине и появилась? Правда?
да что ты... идеи модели ОО для РСУБД появились очень давно, как минимум с конца 80-х. Лично я когда похожее на ООБД писал еще на Paradox Engine примерно в 91-93 году, у меня и мысли не было динамически столбцы добавлять. Да и вокруг тогда я приложений с динамическим изменением структур не видел ни на Foxpro, ни на клиппере.
-
Zhur
- Сообщения: 125
- Зарегистрирован: 01 мар 2006, 18:17
Сообщение
Zhur » 21 мар 2006, 10:20
И все же, я порекомендовал бы автору эту статью... если у него данные меняются в размерах как по числу записей... так и по числу столбцов.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 21 мар 2006, 10:25
с рекоммендацией статьи - совершенно верно.