Правильная докомпиляция словаря .. у drop
Модераторы: m0p3e, edward_K, Модераторы
Re: Правильная докомпиляция словаря .. у drop
Да, и еще напрягает - при добавлении таблиц какие-то невнятные ошибки вылазят, со странными кодами и ничего незначащим описанием. Есть одна странная, неприятная особенность - если при добавлении таблицы возникла ошибка, то уже потом вообще никакое добавление не проходит, видать где-то остаются некорректные записи или еще что. Приходится в таком случаем менять имя добавляемой таблицы, вставлять ее, удалять и снова менять имя на нормальное, сплошные бубны.
-
- Местный житель
- Сообщения: 2896
- Зарегистрирован: 24 июн 2005, 12:12
- Откуда: Иркутская область
Re: Правильная докомпиляция словаря .. у drop
А может кто-нибудь подсказать как действовать в следующем случае:
есть две таблицы, пользовательские, добавленные ранее в БД. Хотим добавить к ним поля (расширить). Можно ли обойтись без удаления ВСЕГО журнала? Если да, то как? БД - MS SQL.
есть две таблицы, пользовательские, добавленные ранее в БД. Хотим добавить к ним поля (расширить). Можно ли обойтись без удаления ВСЕГО журнала? Если да, то как? БД - MS SQL.
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Правильная докомпиляция словаря .. у drop
а нельзя почистить разве журнал именно по этим таблицам ? Может ВЕСЬ журнал чистить и незачем ?
-
- Местный житель
- Сообщения: 2896
- Зарегистрирован: 24 июн 2005, 12:12
- Откуда: Иркутская область
Re: Правильная докомпиляция словаря .. у drop
можно почистить и по этим таблицам. потом дропнуть таблицы и добавить заново через саппорт?
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Правильная докомпиляция словаря .. у drop
угу..вроде логично так по смыслу:
1.чистим журнал по нужной информации
2.select * from table to dbf
3.drop table
4.create table ....
5. import table from dbf arrangeByName
1.чистим журнал по нужной информации
2.select * from table to dbf
3.drop table
4.create table ....
5. import table from dbf arrangeByName
-
- Местный житель
- Сообщения: 1089
- Зарегистрирован: 04 сен 2008, 11:27
- Откуда: Москва
- Контактная информация:
Re: Правильная докомпиляция словаря .. у drop
правильно не использовать
alter dictionary;
и
FullSQL=On
alter dictionary;
и
FullSQL=On
Время ведет!
-
- Местный житель
- Сообщения: 2896
- Зарегистрирован: 24 июн 2005, 12:12
- Откуда: Иркутская область
Re: Правильная докомпиляция словаря .. у drop
это я читал а drop делать из SQL саппорта или из MS SQL ?
-
- Местный житель
- Сообщения: 1089
- Зарегистрирован: 04 сен 2008, 11:27
- Откуда: Москва
- Контактная информация:
Re: Правильная докомпиляция словаря .. у drop
asql строчником .. ну я так делаю ...Алексей писал(а):это я читал а drop делать из SQL саппорта или из MS SQL ?
Время ведет!
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Правильная докомпиляция словаря .. у drop
либо drop делаете через компилятор интерфейсов в сапорте - там это почему то работает. Ну или через консоль управления
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Re: Правильная докомпиляция словаря .. у drop
Должно помочь, на всякий случай, запомните предварительно что у Вас там лежит.
Код: Выделить всё
UPDATE X$FILES WHERE XF$CODE = 0 SET XF$CheckSum = 0;
Жду выхода Вселенная 2.12!
-
- Постоянный гость
- Сообщения: 74
- Зарегистрирован: 23 июн 2007, 23:07
- Откуда: ТопСофт, Минск
Re: Правильная докомпиляция словаря .. у drop
Может кто-нибудь мог абы подытожить, как все таки правильно поступать при необходимости докомпилировать словарь БД
Основываясь на комментарии Терсина, делаю вывод, что зануление контрольной суммы словаря вообще является обходом старого давно устраненного глюка.
В связи с этой неопределенностью хотелось бы узнать:
1) Нужно ли или не нужно занулять или пересчитывать контрольную сумму словаря при его докомпиляции?
2) Запустится ли chkora.exe для проверки, если контрольную сумму изменить? А запустится ли если контрольную сумму не менять? Если запустится, то не покоцает ли chkora.exe пользовательские изменения в таблицах?
3) Запустится ли галактика на докомпилированном словаре, если не менять контрольную сумму? Будет ли видеть при этом новые поля?
Запустится ли галактика на докомпилированном словаре, если контрольную сумму пересчитать (не обнулять)?
4) Если меняем структуру существующей таблицы с помощью утилиты Консоли управления в Support нужно ли выполнять экспорт и последующий импорт существующих в таблице данных, чтобы они не покоцались?
Основываясь на комментарии Терсина, делаю вывод, что зануление контрольной суммы словаря вообще является обходом старого давно устраненного глюка.
Таким образом, предполагаю, что будет меньше проблем, если при любой докомпиляции контрольную сумму словаря вообще не трогать. Однако не заблуждаюсь ли я?Известный хинт с занулением контрольной суммы связан с тем, что на Атлантисе 3.?? флаг пользовательского изменения словаря при расчёте контрольной суммы не учитывался
В связи с этой неопределенностью хотелось бы узнать:
1) Нужно ли или не нужно занулять или пересчитывать контрольную сумму словаря при его докомпиляции?
2) Запустится ли chkora.exe для проверки, если контрольную сумму изменить? А запустится ли если контрольную сумму не менять? Если запустится, то не покоцает ли chkora.exe пользовательские изменения в таблицах?
3) Запустится ли галактика на докомпилированном словаре, если не менять контрольную сумму? Будет ли видеть при этом новые поля?
Запустится ли галактика на докомпилированном словаре, если контрольную сумму пересчитать (не обнулять)?
4) Если меняем структуру существующей таблицы с помощью утилиты Консоли управления в Support нужно ли выполнять экспорт и последующий импорт существующих в таблице данных, чтобы они не покоцались?
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Правильная докомпиляция словаря .. у drop
Вы читать умеете? Политика партии и народа поменялась. Теперь не надо делать alter dictionary и соотв. контрольная сумма меняться не будет, поскольку ваши таблы будут не системными. Обнуление или пересчет приводит к различным проблемам - например при запуске проверки базы на mssql из сапорта(обойти можно, но руками запуская chkmssql c особым cfg). То, на что вы ссылаетесь, действовало 3-4 года назад на 712 и ниже. Терсин кстати уже уволился, так что смотрите на комментарии Ларина (LaaLaa) - они более свежие.
-
- Постоянный гость
- Сообщения: 74
- Зарегистрирован: 23 июн 2007, 23:07
- Откуда: ТопСофт, Минск
Re: Правильная докомпиляция словаря .. у drop
Ну с чтением проблем раньше не наблюдалось...edward_K писал(а):Вы читать умеете? Политика партии и народа поменялась. Теперь не надо делать alter dictionary и соотв. контрольная сумма меняться не будет, поскольку ваши таблы будут не системными. Обнуление или пересчет приводит к различным проблемам - например при запуске проверки базы на mssql из сапорта(обойти можно, но руками запуская chkmssql c особым cfg). То, на что вы ссылаетесь, действовало 3-4 года назад на 712 и ниже. Терсин кстати уже уволился, так что смотрите на комментарии Ларина (LaaLaa) - они более свежие.
То, что Терсин уволился, я тоже в курсе, и с Лариным знаком лично.
Но вопрос не в этом.
Собственно, хочу в очередной раз уточнить, то что вы утверждаете, относится только к пользовательским изменениям структуры БД, или "прикладным" тоже?
Ну вот например, эта "прикладная докомпиляция" с легкостью сбрасывает контрольную сумму на 0, и все дальнейшие усилия по сохранению контрольной суммы при пользовательских докомпиляциях сразу сводятся на нет!
Вопрос, зачем же прикладникам обнулять контрольную сумму?
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Правильная докомпиляция словаря .. у drop
Что касается штатных табл я бы вам посоветовал никогда их не менять - приколы возможны разные, особенно если к ним идет обращение на паскале(зарплатные например 100% лучше не трогать).
Если же вы изменили структуру штатных таблиц(что делает Alter Decimal) и не обнулили контрольную сумму, то при запуске галки будет предупреждение о несовпадении контрольной суммы, но галка вроде как запускалась - хотя лет 5 уже не пробовал. Поменяйте руками в x$users для первой записи контрольную сумму и увидите, что будет(старую только запишите). Что касается Alter Decimal, то мне он лично не нравиться - если 8 знаков не хватает, то надо менять учетную политику, а не портить базу. Сталкивался с тем, что после его работы база оказалась не рабочей(хорошо хоть тестовая). Если знаете Ларина, спросите у него напрямую - он форум не каждый день читает.
Если же вы изменили структуру штатных таблиц(что делает Alter Decimal) и не обнулили контрольную сумму, то при запуске галки будет предупреждение о несовпадении контрольной суммы, но галка вроде как запускалась - хотя лет 5 уже не пробовал. Поменяйте руками в x$users для первой записи контрольную сумму и увидите, что будет(старую только запишите). Что касается Alter Decimal, то мне он лично не нравиться - если 8 знаков не хватает, то надо менять учетную политику, а не портить базу. Сталкивался с тем, что после его работы база оказалась не рабочей(хорошо хоть тестовая). Если знаете Ларина, спросите у него напрямую - он форум не каждый день читает.
-
- Постоянный гость
- Сообщения: 74
- Зарегистрирован: 23 июн 2007, 23:07
- Откуда: ТопСофт, Минск
Re: Правильная докомпиляция словаря .. у drop
Тем не менее, $ALTER810_DECIMAL - докомпиляция поставляемая разработчиком.
Насколько понимаю (эти утверждения пока не проверены):
1) на данный момент нет необходимости, менять контрольную сумму словаря, в том числе и в случае $ALTER810_DECIMAL
2) на словаре с не измененной контрольной суммой, но докомпилированной таблицей, Галактика должна запуститься без доп.сообщений.
3) -//- chkora.exe тоже ругаться не будет, но совсем не понятно, не покоцает ли chkora.exe измененные таблицы.
Собственно, если у кого есть, что сказать по этим утверждениям - welcome! Может, уже кто-то их подтвердил или опроверг....
(Ларин в командировке)
Насколько понимаю (эти утверждения пока не проверены):
1) на данный момент нет необходимости, менять контрольную сумму словаря, в том числе и в случае $ALTER810_DECIMAL
2) на словаре с не измененной контрольной суммой, но докомпилированной таблицей, Галактика должна запуститься без доп.сообщений.
3) -//- chkora.exe тоже ругаться не будет, но совсем не понятно, не покоцает ли chkora.exe измененные таблицы.
Собственно, если у кого есть, что сказать по этим утверждениям - welcome! Может, уже кто-то их подтвердил или опроверг....
(Ларин в командировке)