Для работы с базами данных в последнее время появилось множество утилит,
которые имеют удобный графический интерфейс. Однако для получения практического
опыта при изучении SQL желательно на первых порах поработать ручками. Навыки,
полученные при этом, помогают в критических ситуациях, когда необходимо что-то
исправить на компьютере у клиента. В состав пакета установки Oracle 9i Lite
включена консольная утилита Oracle Mobile SQL (msql), специально предназначенная
для интерактивного и пакетного выполнения SQL-команд.
Данная утилита
поддерживает все подмножество SQL-команд сервера Oracle 9i Lite, а также
большинство команд стандартной для баз данных корпорации Oracle утилиты
SQL*Plus. Вызов утилиты msql из командной строки операционной системы имеет
следующий формат:
msql имя_пользователя/пароль@
jdbc_url_строка_подключения
Например:
D:>msql
system/manager@jdbc: polite:tst1_dsn
или
D:>msql
system/manager@jdbc: odbc:tst1_dsn
Для начала выполнения команды доступны
следующие способы:
— постановка точки с запятой ';' в конце команды и нажатие
клавиши Enter;
— постановка точки с запятой ';' или наклонной черты '/' на
последней строке командного буфера;
— постановка наклонной черты '/' в ответ
на системную подсказку.
Команды языка запросов SQL могут быть размещены
на нескольких строчках командного буфера. Кроме команд языка SQL, утилита msql
поддерживает дополнительный набор команд:
CONN[ECT]
имя_пользователя/пароль@jdbc_url_строка_подключения — установка соединения с
сервером базы данных под другим именем и паролем.
DISC[ONNECT] — разрыв
соединения с базой данных.
SPOOL — включение/выключение режима вывода
протокола в спулер (текстовый файл, принтер и т.д.).
SPOOL — вывод текущего
статуса спулера.
SPOOL <имя_файла> — задание имени файла для
спулера.
SPOOL OFF — выключение спулера.
START (или @) — команда запуска
командного файла (SQL-скрипта). Имеет формат:
START имя_файла
или
@
имя_файла
MSQL также поддерживает вариант команды вида '@@' для
выполнения скриптов из файлов с указанием относительного пути.
DESC[RIBE]
[схема.]объект — вывод на экран структуры таблицы, представления или
синонима.
SET — команда настройки параметров msql.
SET echo ON/OFF —
разрешает или запрещает вывод на экран процесса выполнения скрипта.
SET
sqlp[rompt] ON/OFF — устанавливает режим запроса значений переменных привязки
или замены.
SET hea[ding] ON/OFF — разрешает или запрещает вывод на экран
заголовков колонок.
SET auto[commit] ON/OFF — при заданном режиме ON Oracle
9i Lite автоматически фиксирует изменения после успешного выполнения команд
INSERT, UPDATE или DELETE.
SET TRANSACTION ISOLATION LEVEL [READ
COMMITTED][READ WRITE] — устанавливает режим изоляции транзакций.
SET long
длина — устанавливает максимальную отображаемую длину колонок типа LONG.
REM
или '--' — оператор комментария.
DEF[INE] имя_переменной =
значение_переменной — создание переменной с заданным значением.
UNDEF[INE]
имя_переменной — удаление переменной.
CLS или CLE[AR] — очищает
экран.
CLE[EAR] BUFFER — очищает внутренний SQL-буфер.
PAUSE — ожидание
нажатия пользователем клавиши Enter.
LIST — вывод на экран содержимого
SQL-буфера.
[HO]ST команда — выполнение команды операционной
системы.
CLOCK start — команда начала отсчета времени.
CLOCK stop — вывод
на экран времени, прошедшего после выполнения команды CLOCK start.
REPEAT
UNTIL — команда циклического выполнения блока команд (поддерживаются вложенные
циклы), например:
clock start
define N = 0
create table test (c1
number, c2 varchar2 (256));
repeat
insert into test values ('%N%',
'abcde');
define N = N + 1
until N = 10000
clock stop;
DIR или
LS — вывод на экран списка имени и владельца таблиц.
DIR имя_таблицы — вывод
на экран содержимого таблицы (аналогично запросу 'SELECT * FROM
имя_таблицы').
DIR VIEW — вывод на экран списка имени и владельца
представлений.
DIR SEQUENCE — вывод на экран списка имени и владельца
последовательностей.
EXIT|QUIT — завершение сессии и передача управления
операционной системе.
В отличие от SQL*Plus, команда 'exit' в командных
файлах рассматривается только в контексте данного файла.
Например, если
командный файл t1.sql вызывает файл t2.sql, включающий команду 'exit', то MSQL
не разорвет соединение с БД и не завершит работу после выполнения скрипта
t2.sql.
Сергей Бердачук, Berdachuk@tut.by
http://berdachuk.at.tut.by
Тестирование параллельного программного обеспечения представляет собой более
сложную задачу по сравнению с тестированием последовательной программы. Программист
должен знать о подводных камнях при тестировании параллельного кода, имеющихся
методологиях и инструментарии.
Аннотация. В статье кратко рассматривается архитектура AMD64 компании AMD и ее
реализация EM64T компании Intel. Описаны особенности архитектуры, ее возможности,
достоинства и недостатки.