 |
Как написать SQL-script
(3-й маленький совет)
И, наконец, практические рекомендации, как оформить скрипт в Word-97.
Первое на что следует обратить внимание, это, как ни странно, шрифт и стиль. Необходимо выбрать стиль "Plain Text" и шрифт Courier New размером от 8 до 10 пунктов. Шрифт должен быть моноширинный, т.е. когда ширина всех букв одинаковая. Это позволит форматировать текст с отступами для удобства восприятия. Чем меньше размер шрифта, тем больше символов умещается в строке, но труднее читать. Размер меньше 8 пунктов уже неприемлем.
Второе, это оформление страницы. Т.е. страница должна иметь колонтитул, содержащий название скрипта, имя файла, дату и время последнего сохранения, номер страницы и количество страниц. Для этого выбираем в меню пункт "View/Header and Footer" ("Вид/Колонтитулы").
Переключаемся на нижний колонтитул (Footer) и в выделенном поле пишем:
- "наименование программы", - и через тире и пробел вставляем из автотекста (AutoText) либо имя файла и путь (Filename and path), либо только имя файла.
- Отступив немного пробелами, вставляем дату (кнопка с календарем) и время (кнопка с часами). Так как дата вставляется с двумя цифрами года, то нужно немного подправить формулу. Для этого указываем курсором на дату, и после клика поле даты станет серым. После этого нажатием на правую кнопку мыши открываем меню свойств и выбираем (Toggle Field Codes), в результате дата превращается в формулу, которой текст "dd.MM.yy" нужно заменить на "dd.MM.yyyy". Снова выбираем из меню свойств (Toggle Field Codes) и сразу, опять из меню свойств, выбираем (Update Field).
- Опять отступив немного пробелами, вставляем из автотекста "Стр. X из Y" (Page X of Y).
- Далее пробелами выравниваем текст так, чтобы все это красиво лежало. При необходимости можно изменить шрифт и его характеристики.
Когда все закончено можно закрыть панель колонтитулов.
Таким образом, мы получаем документ, в котором при распечатке на каждой странице будет указано имя файла и когда он последний раз был сохранен. И даже если большая распечатка будет рассыпа по отдельным листочкам, то ее можно будет собрать без ошибок.
Теперь собственно SQL-скрипт.
Начинать его нужно с описания структуры, оформленной в виде комментария между символами /* . . . */. Как оформлять структуру расскажем позже.
Теперь описания таблиц. Так как с описанием таблицы, как правило, идут генераторы, триггера, возможно дополнительные процедуры и представления (view), то начинать описание таблицы нужно с новой страницы – так будет удобнее читать распечатку. Например
/* Таблица StatList*/
Create table StatList
(StatID Integer not null primary key,
StatName AZTITLE default '' not null,
StNameEng AZTitle default '' not null);
commit;
И сразу, в любом месте фразы "/* Таблица StatList */" нужно вставить закладку. Делается это так:
- в меню выбрать "Вставить/закладка" (Insert/bookmark) и в верхнем поле написать "Table_StatList" и нажать кнопку "добавить" (ADD). Название должно быть написано латинскими буквами (даже в русском Wordе) и не содержать пробелов. Если сначала поставить слово Table, то сортировка будет происходить по группам объектов.
Таким образом, мы получили возможность ссылаться и переходить место в тексте, обозначенное определенным именем. Если нам нужно просто попасть на нужное место, то нажимаем Ctrl+G и выбираем имя закладки назначения. Переход в файле 4Мб (600стр.) происходит практически мгновенно.
Теперь, можно построить структуру таблиц для облегчения навигации. Это может выглядеть примерно так:
/*
Вспомогательные таблицы для адресов и персоналий
+--> Address - Таблица адресов
+--> StatList - список Федеральных единиц
+--> AreaList - список областей
+--> CityList - Список городов (населенных пунктов)
+--> StreetList - Список улиц
+--> BildList - Список домов
+--> BlockList - Список корпусов
+--> OfficeList – Список офисов, квартир
*/
Построив "буковками" схему взаимодействия таблиц и их связей, можно на каждое название таблицы поставить гиперссылку и в дальнейшем одним щелчком мыши переходить на описание той или иной таблицы.
Для этого нужно выделить текст, на который ставится гиперссылка, и выбрать в меню "Вставить/Гиперссылка" (Insert/HyperLink) или нажать клавиши Ctrl+K. После чего откроется диалог, в котором содержаться два поля:
- Связать с файлом/URL (Link to file or URL)
- Имя объекта в документе (вводить не обязательно) (Named location in file (optional))
Так как мы вставляем гиперссылку на тот же документ, в котором работам, то на первое поле можно не обращать внимание, а во втором поле нужно нажать кнопку "Обзор" и из списка закладок выбрать необходимую и закрыть все диалоги, нажав кнопки "ОК". Возможно, Word изменит оформление текста на гиперссылке, но это легко подправить.
После всех этих действий получиться удобная схема вместо оглавлений. Особенно если вспомнить, что в тексте таблицы, как правило, располагаются в обратном порядке, – т.е. сначала определяются составляющие, а затем определяется таблица, которая собирает в себя эти составляющие.
Но это еще не все. Если в таблице определяются внешние ссылки, то их тоже можно определить как гиперссылки. Например:
/* Table ADDRESS */
Create table ADDRESS
(ADDRID Integer Not null Primary key,
AdrParnt Integer default 0,
AdrCount Integer default 0,
AdrIndexPO AZNOVAR,
AdrCountry SmallInt default 0 references Country on update cascade,
AdrStat Integer default 0 references StatList on update cascade,
AdrArea Integer default 0 references AreaList on update cascade,
AdrCity Integer default 0 references CityList on update cascade,
AdrStreet Integer default 0 references StreetList on update cascade,
AdrBild Integer default 0 references BildList on update cascade,
AdrBlock Integer default 0 references BlockList on update cascade,
AdrOffice Integer default 0 references OfficeList on update cascade,
AdrNotes AZNOTES);
commit;
В этом случае, уже само описание таблицы имеет ссылки на соответствующие таблицы, указанные в предложении "references".
И, наконец, в конце текста желательно расположить протокол изменений, также разбитый по объектам, а гиперссылку на них делать из заголовка описания таблицы.
Таким образом, несмотря на то, что текст скрипта может содержать десятки тысяч строк и сотни объектов, по нему можно построить очень удобную навигацию, не нарушающую текста скрипта. После сохранения этого текста в формате "Plain Text" все дополнения пропадают и не оказывают влияния на выполнение скрипта.
Если хотите обсудить публикацию - заполните окно и нажмите кнопку
© 17.01.2003, Архангельский А.Г.
|