ИБМ СПУФИ
SPUFI ( SQL-процессор с использованием файлового ввода ) — это средство базы данных , изобретенное IBM для взаимодействия с их Db2 системой . Доступ к нему осуществляется из TSO ISPF из меню Primary Option DB2I.
SPUFI позволяет напрямую вводить команды SQL в среде TSO, а не встраивать их в программу.
Параметры SPUFI по умолчанию
[ редактировать ]После настройки настройки SPUFI по умолчанию вряд ли будут изменены. Их значения очень похожи в разных установках, типичный пример показан ниже.
CURRENT SPUFI DEFAULTS SSID: DDBA
===> ____________________________________________________________________________
Enter the following to control your SPUFI session:
1 SQL TERMINATOR .. ===> ; (SQL Statement Terminator)
2 ISOLATION LEVEL ===> CS (RR=Repeatable Read, CS=Cursor Stability)
3 MAX SELECT LINES ===> 250 (Maximum number of lines to be
returned from a SELECT)
Output data set characteristics:
4 RECORD LENGTH ... ===> 4092 (LRECL=Logical record length)
5 BLOCK SIZE ...... ===> 4096 (Size of one block)
6 RECORD FORMAT ... ===> VB (RECFM=F, FB, FBA, V, VB, or VBA)
7 DEVICE TYPE ..... ===> SYSDA (Must be DASD unit name)
Output format characteristics:
8 MAX NUMERIC FIELD ===> 33 (Maximum width for numeric fields)
9 MAX CHAR FIELD .. ===> 80 (Maximum width for character fields)
10 COLUMN HEADING .. ===> NAMES (NAMES, LABELS, ANY or BOTH)
Режим использования
[ редактировать ]Хотя по сути это интерактивный инструмент, SPUFI работает с использованием пары наборов данных . (Набор данных в z/OS эквивалентен файлу в других операционных системах.) На главном экране SPUFI указываются входной набор данных и выходной набор данных; их можно указать один раз, а затем повторно использовать. Когда пользователь уходит с главного экрана, стандартный редактор ISPF для входного набора данных открывается . На этом этапе пользователь может ввести необходимые операторы SQL, используя знакомый редактор. При выходе из редактора снова появляется главный экран СПУФИ; когда пользователь переходит в это время, содержимое входного набора данных выполняется. Результаты помещаются в выходной набор данных, и на этом выходе открывается редактор ISPF (в режиме просмотра только для чтения). Вот как пользователь читает свои результаты. На этих этапах продолжается интерактивное использование SPUFI; вкратце цикл такой:
- ... Главное → редактировать → Главное → просмотреть вывод → Главное → редактировать → Главное → просмотреть вывод → Главное...
Поскольку SPUFI использует обычные наборы данных для команд и выходных данных, можно предварительно заполнить команды или работать с выходными данными, обращаясь к наборам данных независимо от инструмента SPUFI. Использование наборов данных также означает, что возможно сложный набор команд SQL будет сохраняться от сеанса к сеансу, а не теряться при выходе пользователя из инструмента.
Пример запроса
[ редактировать ]SQL-команда
[ редактировать ]Простой запрос с комментариями.
-- Select specific fields from the EMPLOYEE table
-- for staff in Department 01.
SELECT FIRST_NAME, LAST_NAME, DATE_JOINED
FROM EMPLOYEE
WHERE DEPARTMENT = '01'
ORDER BY LAST_NAME DESC, FIRST_NAME
Набор результатов
[ редактировать ]Типичный результат запроса такого типа.
-----------+-----------+-----------+-----------+
FIRST_NAME LAST_NAME DATE_JOINED
-----------+-----------+-----------+-----------+
Joe Briggs 2001-10-01
Bob Brown 2002-05-06
Fred Brown 2000-01-03
-----------+-----------+-----------+-----------+
NUMBER OF ROWS AFFECTED IS 3
STATEMENT EXECUTION WAS SUCCESSFUL, SQLCODE IS 0
-----------+-----------+-----------+-----------+
Выходной набор данных содержит результирующие строки (в случае SELECT), а также дополнительные сведения, такие как количество строк, на которые влияет запрос SQL, SQLCODE, возвращаемый при выполнении запроса SQL. В случае каких-либо ошибок SQL будет предоставлена подробная информация об ошибке.
Ссылки
[ редактировать ]Руководство разработчика DB2, Крейг С. Маллинз, Sams Publishing, ISBN 0-672-31168-2