Найдено 127 результатов

Дмитрий
25 дек 2014, 11:26
Форум: Администрирование
Тема: Не создается индекс по полю VARCHAR(254)
Ответы: 9
Просмотры: 17237

Re: Не создается индекс по полю VARCHAR(254)

поскольку вы влепили пустопорожний коллэйт win1251, у вас 136. А могло бы быть и 252, если уберете коллэйт. Откуда вы его взяли, кстати? я не припомню, чтобы кто-нибудь когда-либо советовал этот коллэйт использовать. Я его не указывал. Он отображается при создании поля в IBExpert-е. Однкао, если по...
Дмитрий
23 дек 2014, 16:20
Форум: Администрирование
Тема: Не создается индекс по полю VARCHAR(254)
Ответы: 9
Просмотры: 17237

Re: Не создается индекс по полю VARCHAR(254)

Что-то я совсем запутался... У меня win1251 c collate. Опытным путем подобрал размер поля varchar(136). Индекс создался, backup восстанавливается, все хорошо. Вот эти 136 символов я никак не могу увязать ни с 252-я байтами, ни с 84-я. Где я ошибаюсь? Тогда по логике, с collate и win1251 у меня макси...
Дмитрий
23 дек 2014, 12:35
Форум: Администрирование
Тема: Не создается индекс по полю VARCHAR(254)
Ответы: 9
Просмотры: 17237

Re: Не создается индекс по полю VARCHAR(254)

kdv писал(а):версия XE появилась позже 2009. Я удивлен, что нужно об этом сообщать :-)
Да это я знаю, не совсем тупой :-) Вопрос был о максимальном размере текстового поля, по которому можно построить индекс в Interbase 2009!
Дмитрий
23 дек 2014, 09:40
Форум: Администрирование
Тема: Не создается индекс по полю VARCHAR(254)
Ответы: 9
Просмотры: 17237

Re: Не создается индекс по полю VARCHAR(254)

kdv писал(а):
Вроде как размер индекса не должен быть больше 1/4 размера страницы БД?
В Firebird - с версии 2.0. В InterBase - с версии XE.
А в версии 2009?
Дмитрий
22 дек 2014, 18:22
Форум: Администрирование
Тема: Не создается индекс по полю VARCHAR(254)
Ответы: 9
Просмотры: 17237

Не создается индекс по полю VARCHAR(254)

Доброго дня! Имеем Interbase 2009, размер страницы БД 16384, в таблице codepage win1251, collate win1251. В таблице есть поле FULL_NAME VARCHAR(254). По этому полю пытаюсь создать индекс. В результате получаю сообщение "key size exceeds implementation restriction for index". Вроде как размер индекса...
Дмитрий
10 авг 2011, 12:14
Форум: Баги и падения сервера
Тема: SWEEPER работает 4 дня! Help!
Ответы: 5
Просмотры: 9094

Re: SWEEPER работает 4 дня! Help!

Спасибо! Все получилось. Вечером сделал бэкап с -g. Все прошло нормально. Остановил сервер. Запустил снова. Установил sweep interval в 0. SWEEPER снова стартанул, но через час прекратил работу. Сейчас все нормально.
Дмитрий
09 авг 2011, 15:31
Форум: Баги и падения сервера
Тема: SWEEPER работает 4 дня! Help!
Ответы: 5
Просмотры: 9094

Re: SWEEPER работает 4 дня! Help!

точная версия сервера? Инфа из IBExpert: Версия сервера WI-V7.5.1.162 Размер файла БД 43260МВ (это на всякий случай) Смотрите firebird.log, вдруг там повреждение БД. В моем случае это interbase.log. Кроме следующих строчек никакого криминала, кроме ошибок 10054 нет. DEPOZIT2 (Server) Mon Aug 08 12:...
Дмитрий
09 авг 2011, 11:40
Форум: Баги и падения сервера
Тема: SWEEPER работает 4 дня! Help!
Ответы: 5
Просмотры: 9094

SWEEPER работает 4 дня! Help!

Добрый день! Появилась следующая проблема. Было массовое удаление записей из БД (около 8 млн.). Затем сам стартанул SWEEPER который работает до сих пор. При этом я не могу сделать backup. Вылезает deadlock. Ниже приведу фрагменты логов и разную другую инфу. Подскажите, как остановить сборку мусора и...
Дмитрий
26 ноя 2007, 11:50
Форум: Проектирование БД и запросов
Тема: Как запретить удаление?
Ответы: 11
Просмотры: 8361

Всем спасибо. Вопрос снят.
Дмитрий
24 ноя 2007, 21:33
Форум: Проектирование БД и запросов
Тема: Как запретить удаление?
Ответы: 11
Просмотры: 8361

Значит так. Я написал триггер аналогичный тому, что был в примере. Создал exception на удаление. В триггере анализирую, если count <> 0, то вызываю exception. Так вот, при каскадном удалении count <> 0!!!
Дмитрий
24 ноя 2007, 00:27
Форум: Проектирование БД и запросов
Тема: Как запретить удаление?
Ответы: 11
Просмотры: 8361

Тогда я понял все правильно. Но не работает. Мой exception вылезает.
Дмитрий
23 ноя 2007, 16:22
Форум: Проектирование БД и запросов
Тема: Как запретить удаление?
Ответы: 11
Просмотры: 8361

Тынц. Такой триггер не рабоает. Только что пробовал. Или триггер не правильно написал. CREATE TRIGGER CHILD_AD FOR CHILD ACTIVE AFTER DELETE POSITION 0 as declare variable FK_Cnt integer; begin select count(*) from parent where id=old.parentid into :FK_Cnt; if (FK_Cnt = 0) then -- Это каскадное уда...
Дмитрий
23 ноя 2007, 15:09
Форум: Проектирование БД и запросов
Тема: Как запретить удаление?
Ответы: 11
Просмотры: 8361

Вариант 1: Убери ON DELETE CASCADE Это мне нужно, т.к я удалаяю записи из DOC_HISTORY. А мне надо, что бы никто не удалил запись из LTR_HISTORY. Если удалят, то в DOC_HISTORY будет висеть "бесхозная" запись. Вариант 2: не давай никому права на удаление. Вариант 3: повесь триггер, который бы возбужд...
Дмитрий
23 ноя 2007, 11:10
Форум: Проектирование БД и запросов
Тема: Как запретить удаление?
Ответы: 11
Просмотры: 8361

Как запретить удаление?

День добрый! Есть проблемка. Имеем две таблицы: CREATE TABLE DOC_HISTORY ( CUSTOMER_ID INTEGER NOT NULL, DOC_ID INTEGER NOT NULL, DOC_TYP INTEGER NOT NULL, DOC_DATE DATE NOT NULL, REAL_DOC_DATE DATE NOT NULL, DOC_NOTE VARCHAR(255), ACTUALITY SMALLINT DEFAULT 1 NOT NULL, TABLE_NAME VARCHAR(32) NOT NU...
Дмитрий
19 ноя 2007, 09:55
Форум: Баги и падения сервера
Тема: Сильное падение производительности сервера
Ответы: 31
Просмотры: 20296

Н-да... А где бы почитать про индексы? Так сказать заполнить пробел в знаниях. Только не типа "индексы для чайников", а что-нибудь серьезное!
Дмитрий
18 ноя 2007, 00:12
Форум: Баги и падения сервера
Тема: Сильное падение производительности сервера
Ответы: 31
Просмотры: 20296

Обратите внимание на порядок столбцов в индексе CREATE UNIQUE INDEX DOC_HIS1 ON DOC_HISTORY (DOC_ID, CUSTOMER_ID); CREATE INDEX DOC_HIS2 ON DOC_HISTORY (CUSTOMER_ID); в процедуре CLEAR_DOC_HISTORY FOR SELECT CUSTOMER_ID, DOC_ID FROM DOC_HISTORY WHERE (CUSTOMER_ID = :CUSTOMER_ID) AND ... ... ... PLA...
Дмитрий
16 ноя 2007, 11:56
Форум: Баги и падения сервера
Тема: Сильное падение производительности сервера
Ответы: 31
Просмотры: 20296

WildSery писал(а):
Дмитрий писал(а):Первый запрос можно и по натуралу прогнать. Даже быстрее работает, сегодня проверял. Но все равно, очень медленно!
Ты мой вариант пробовал?
Да, пробовал. Выполняется быстро, только в том виде, в каком проедура выложена, она не компилится.
Дмитрий
15 ноя 2007, 21:10
Форум: Баги и падения сервера
Тема: Сильное падение производительности сервера
Ответы: 31
Просмотры: 20296

База прыжком не увеличивалась. Обычно, раз в год, добавляется около 1 млн. записей. Потом немного "обвески" (около 500 тыс.). И это все. Далее идут апдейты. Причем, после добавления записей, я всегда делаю backup/restore. Первый запрос можно и по натуралу прогнать. Даже быстрее работает, сегодня про...
Дмитрий
15 ноя 2007, 14:58
Форум: Баги и падения сервера
Тема: Сильное падение производительности сервера
Ответы: 31
Просмотры: 20296

kdv писал(а):unique на пк - это концептуально, к производительности отношения не имеет.
Это я знаю. Просто начинаю кое-какие связи устанавливать, а с ПК красивше. Но это все лирика.
А чё с производительностью делать?
Дмитрий
15 ноя 2007, 13:53
Форум: Баги и падения сервера
Тема: Сильное падение производительности сервера
Ответы: 31
Просмотры: 20296

CREATE UNIQUE INDEX DOC_HIS1 ON DOC_HISTORY (DOC_ID, CUSTOMER_ID); опять... почему не Primary Key? Так эта процедура выполнется уже 17 часов 25 минут! дык. по индексу, без индекса... 1098443 раз произвести поиск.... причем наверняка могут лишние индексы цепляться. Уже переделываю на Primary Key. Вс...