Академия Специальных Курсов по Компьютерным Технологиям
    Главная страница Послать письмо
 
AskIt.ru  
   
   
   
   
   
   
 
 
  Главная / Заказные курсы / SQL и PL/SQL в Oracle10g
 
 

Получить учебные материалы по этому курсу


<-- Назад Читать дальше -->

Лабораторная работа 12.1 Работа с переменными

Переменные в Oracle PL/SQL, блоки PL/SQL

Задание:

Используя возможности PL/SQL, модифицируйте команду на вставку записи для нового сотрудника, созданный на предыдущих лабораторных (см. ниже) таким образом, чтобы:

  • для добавляемых значений использовались переменные;
  • переменным присваивались значения при помощи диалоговых окон;
  • информация о должности сотрудника запрашивалась только один раз;
  • производилась фиксация транзакции.

Просмотреть информацию о структуре таблицы hr.employees можно при помощи команды DESCRIBE или графическими средствами Oracle SQL Developer.

Исходная команда:

insert into hr.employees values(employees_seq.nextval, '&Имя_сотрудника', '&Фамилия_сотрудника', '&Адрес_электронной_почты', '&Номер_телефона' ,sysdate, '&Должность_сотрудника', (SELECT MIN(SALARY) from hr.employees where job_id='&Должность_сотрудника'), null, null, null)

Решение:

Соответствующий код PL/SQL может выглядеть так:

DECLARE

sFirstName varchar2(20) := '&Имя_сотрудника';

sLastName varchar2(25) := '&Фамилия_сотрудника';

sEmail  varchar2(25) := '&Адрес_электронной_почты';

sPhoneNumber varchar2(20) := '&Номер_телефона';

sJobId varchar2(10) := '&Должность_сотрудника';

BEGIN

insert into hr.employees values(employees_seq.nextval, sFirstName, sLastName, sEmail,  sPhoneNumber, sysdate, sJobId, (SELECT MIN(SALARY) from hr.employees where job_id=sJobId), null,null, null);

commit;

END;

 

   
   
   
   
   
   
   
   
   
   
 
<-- Назад Читать дальше -->

Получить учебные материалы по этому курсу


 
© 2004-2016, Академия Специальных Курсов
по Информационным Технологиям
.
Все права защищены.

Разработка NevaStudio
г. Санкт-Петербург, Васильевский остров,
20-я линия, д. 7
Офис 101, 2-й этаж
Телефон: 8(812)922-47-60
E-mail: info@askit.ru