Проблемы при открытии базы данных ПК! из-за её недокументированного использования

В последнее время участились случаи обращения за помощью пользователей, испортивших свою базу данных собственными руками.

На сколько мы поняли, иногда пользователи работают с базой данных «Печати конвертов!» database.mdb не средствами программы, а какими-то своими методами. Например, заполняют данные о контрагентах,  используя другие программы (тот же MS Access).

Мы не имеем ничего против такого использования базы, но мы не несём ответственность за порчу данных вследствие недокументированного использования базы!

Внимание! Если вы поручили создание или изменение базы своему программисту, пожалуйста,  покажите ему это сообщение!


Предупреждение 1: не трогайте таблицу DB_scheme!

Чтобы «Печать конвертов!» могла работать с базой, не трогайте таблицу DB_scheme. По этой таблице мы определяем версию схемы данных, поэтому:

  • эта таблица должна существовать;
  • в ней должна быть одна строка;
  • поле Version должно содержать целое число соответствующее нашему номеру схемы данных, который меняется от версии к версии программы.
CREATE TABLE DB_scheme ( 
    Version Long NULL,
    LastChangeDate varchar(80) NULL,
    LastChangedRevision varchar(80) NULL
);

INSERT INTO DB_scheme (Version, LastChangeDate, LastChangedRevision)
VALUES ('5','$LastChangedDate: 2008-06-07 22:08:34 +0500 (Сб, 07 июн 2008) $','$LastChangedRevision: 15788 $');



Предупреждение 2: для создания новых таблиц и переименовывания существующих (и вообще при работе со схемой данных) используйте специальные инструменты!

В процессе обновления старых баз на новые, обновление программы выполняет запросы:

ALTER TABLE EconomicMember DROP CONSTRAINT FKBB36913AAC821C9E; 
ALTER TABLE Letter DROP CONSTRAINT FKAD50925B12F6F393;
ALTER TABLE Letter DROP CONSTRAINT FKAD50925B1A4CFAC;

Названия типа FKBB36913AAC821C9E не всегда видны из графического пользовательского интерфейса (например, не видны в MS Access). Эти и некоторые другие системные названия доступны только использованием API и специальных утилит. Например, точную схему данных можно посмотреть с помощью нашей бесплатной утилиты BatchAccess с опцией -r.

Если менять нашу схему данных "руками", то системные названия будут называться по-другому, и обновление может не сработать. Дать правильные названия можно, используя тот же BatchAccess и SQL.

Вложения