помогите написать продедуру

Модераторы: kdv, CyberMax

Ответить
Fmouse
Сообщения: 2
Зарегистрирован: 10 фев 2008, 20:23

помогите написать продедуру

Сообщение Fmouse » 10 фев 2008, 20:28

Добрый день,
помогите написать несколько процедур на Interbase 2007

Есть две таблицы
1) clients

Код: Выделить всё

CREATE TABLE CLIENTS (
    ID         CHAR(10) NOT NULL,
    FIO        VARCHAR(50),
    CART_FILM  VARCHAR(50),
    "DATE"     DATE
);
2) cartoteka

Код: Выделить всё

CREATE TABLE CARTOTEKA (
    NAME_FILM    VARCHAR(50) NOT NULL,
    DIRECTOR     VARCHAR(50),
    GANR         D_GANR /* D_GANR = VARCHAR(10) NOT NULL CHECK (VALUE IN ('comedy', 'action', 'melodramm')) */,
    KOL          NUMERIC(3,0),
    DESCRIPTION  VARCHAR(50)
);
вот что нужно сделать
1) процедуру которая осуществляет проверку: если колличество экземпляров в таблице cartoteka больше указанного числа, то полю description присваивалась одна звёздочка, если меньше то две
2) маркировала бы фильмы в зависимости от жанра (action - "*", melodramm "**", comedy "***")
Заранее спасибо

Fmouse
Сообщения: 2
Зарегистрирован: 10 фев 2008, 20:23

Сообщение Fmouse » 10 фев 2008, 21:01

вот что у меня получилось по первой процедуре

Код: Выделить всё

begin
  for select cartoteka.kol, cartoteka.description
  from cartoteka  into
  :kol, :description;
   do
  IF (:kol > :in_kol) THEN
  update cartoteka
         set description = '*';
  IF (:kol < :in_kol) THEN
  update cartoteka
         set description = '**';
end
[/code]

Ответить