Скачиваний:
19
Добавлен:
01.04.2014
Размер:
82.43 Кб
Скачать

If not commnull then

{ Чтобы выполнять сравнение и операции только для не-NULL значений

связи }

begin

if city = 'London' then comm: = comm * .02 * .02

else comm: = comm + .02;

end;

{Даже если значение и не - commnull, begin и end здесь для ясности.}

write ('Текущий city для продавца',

snum, 'есть', city,

Хотите его изменить? (Y/N)');

3. Обратите Внимание: Продавец не назначеный в данное время

в определенный город, не будет иметь изменений комиссионых

при определении находятся ли он в Лондоне.

read (ответ);

{Ответ теперь имеет значение независимо от того что

citynull - верен или неверен.}

end; {иначе не citynull}

if response = 'Y' then

begin

write ('Введите новое значение city:');

read (newcity);

If not commnull then

{Эта операция может быть выполнена только для не-NULL

значений. }

case newcity of:

begin

'Barcelona':comm:= comm + .01,

'San Jose': comm: = comm *.01

end; {случно и если не commnull}

EXEC SQL UPDATE Salespeople

SET city = :newcity, comm = :comm:i_com

WHERE CURRENT OF Salesperson;

{Переменная индикатора может поместить NULL значение в поле

comm если так назначено.}

380 ПОНИМАНИЕ SQL

___________________________________________________________________

ПРИЛОЖЕНИЕ A

end; { Если ответ = 'Y', или если ответ < > 'Y',

изменений не будет. }

EXEC SQL FETCH Salesperson

Into (:snum, :sname, :city:i_clt,

:comm:l_com);

{выборка следующей строки}

end; {если SQLCODE = 0}

EXEC SQL CLOSE CURSOR Salesperson;

end; {основной программы}

Соседние файлы в папке ПОНИМАНИЕ SQL