3.4.1 Буфер с SQL*PlusСреди множества функций SQL*Plus есть и функция тестового редактора. Работа с Oracle становится проще, если знать об этих функциях. Когда вы вводите что-то с клавиатуры в SQL*Plus, вводимые вами символы помещаются в буфер. При нажатии клавиши Enter SQL*Plus сохраняет то, что вы ввели в виде строки в буфере и переходит на новую строку, но не завершает оператор и не пытается его выполнить. Рис. 3.6. Успешное соединение пользователя student с базой данных На рис. 3.7 пользователь ввел SQL-оператор из двух строк. При необходимости пользователь может ввести большее количество строк. Когда пользователь вводит точку с запятой и нажимает Enter, SQL*Plus отмечает конец оператора и выполняет его. Рис. 3.7. Многострочный буфер SQL*Plus Чтобы увидеть содержимое буфера необходимо ввести команду LIST, как показано в нижней части рис. 3.8. Строка, помеченная звездочкой, в данном случае строка 3 является текущей строкой. Чтобы сделать текущей другую строку, введите LIST и номер строки, например LIST 1. Чтобы изменить содержимое текущей строки, введите команду change /строка1/строка2/. Здесь строка1 - это последовательность символов, которую нужно заменить, а строка2 - последовательность символов, на которую производится замена. Следует отметить, что в Oracle команды, имена столбцов, таблиц и представлений, а также прочие элементы базы данных не чувствительны к регистру. LIST это то же самое, что и list. Единственный случай, ко гда регистр имеет значение, внутри кавычек в строковых выражениях. Так, выражения SELECT * from ARTIST и select * FROM artist идентичны. Но выражения SELECT * FROM ARTIST WHERE Name = 'Miro’ и SELECT * FROM ARTIST WHERE Name = 'MIRO’ являются различными. Регистр внутри кавычек важен. Рис. 3.8. Использование команды LIST Есть также разница между точкой с запятой (;) и косой чертой (/). Точка с запятой является символом конца оператора, а косая черта предписывает Oracle выполнить операторы, находящиеся в буфере. Если имеется только один оператор и отсутствует неопределенность по поводу того, что требуется сделать, Oracle будет интерпретировать точку с запятой и косую черту одинаково. Так, в выражении select * FROM user_tables; точка с запятой одновременно служит символом конца оператора и заставляет Oracle выполнить этот оператор.
|