Модераторы: Akella
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запросы в Interbase, Нужно помоч сделать запросы к бд ib 
:(
    Опции темы
digkill
Дата 11.2.2010, 20:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 11.2.2010

Репутация: нет
Всего: нет



Здраствуйте.

Есть такая БД по кинотеатру.
Вот таблицы:

Код

/* Table: CINEMA, Owner: SYSDBA */

CREATE TABLE "CINEMA" 
(
  "ID"    INTEGER NOT NULL,
  "NAME_FILM"    VARCHAR(40) NOT NULL,
  "GENRE"    VARCHAR(20) NOT NULL,
 PRIMARY KEY ("ID")
);
SET TERM ^ ;


/* Triggers only will work for SQL triggers */

CREATE TRIGGER "G_T_CINEMA" FOR "CINEMA" 
ACTIVE BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID= GEN_ID (G_CINEMA,1);
END
 ^

COMMIT WORK ^
SET TERM ;^

Код

/* Table: CUSTOMER, Owner: SYSDBA */

CREATE TABLE "CUSTOMER" 
(
  "ID"    INTEGER NOT NULL,
  "CUST_NAME"    VARCHAR(30) NOT NULL,
 PRIMARY KEY ("ID")
);
SET TERM ^ ;


/* Triggers only will work for SQL triggers */

CREATE TRIGGER "G_T_CUSTOMER" FOR "CUSTOMER" 
ACTIVE BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID= GEN_ID (G_CUSTOMER,1);
END
 ^

COMMIT WORK ^
SET TERM ;^



[code=sql]
/* Table: HALL, Owner: SYSDBA */

CREATE TABLE "HALL" 
(
  "ID"    INTEGER NOT NULL,
  "SEATING_CAPACITY"    INTEGER NOT NULL,
  "NAME_HALL"    VARCHAR(30) NOT NULL,
 PRIMARY KEY ("ID")
);
SET TERM ^ ;


/* Triggers only will work for SQL triggers */

CREATE TRIGGER "G_T_HALL" FOR "HALL" 
ACTIVE BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID= GEN_ID (G_HALL,1);
END
 ^

COMMIT WORK ^
SET TERM ;^
Код

/* Table: PLACE_HALL, Owner: SYSDBA */

CREATE TABLE "PLACE_HALL" 
(
  "ID"    INTEGER NOT NULL,
  "ROW"    INTEGER NOT NULL,
  "PLACE"    INTEGER NOT NULL,
  "SECTOR"    INTEGER NOT NULL,
 PRIMARY KEY ("ID")
);
ALTER TABLE "PLACE_HALL" ADD FOREIGN KEY ("SECTOR") REFERENCES SECTOR ("ID");
SET TERM ^ ;


/* Triggers only will work for SQL triggers */

CREATE TRIGGER "G_T_PLACE_HALL" FOR "PLACE_HALL" 
ACTIVE BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID= GEN_ID (G_PLACE_HALL,1);
END
 ^

COMMIT WORK ^
SET TERM ;^



Код

/* Table: SECTOR, Owner: SYSDBA */

CREATE TABLE "SECTOR" 
(
  "ID"    INTEGER NOT NULL,
  "NAME_SECTOR"    VARCHAR(5) NOT NULL,
  "NUMBER_HALL"    INTEGER NOT NULL,
 PRIMARY KEY ("ID")
);
ALTER TABLE "SECTOR" ADD FOREIGN KEY ("NUMBER_HALL") REFERENCES HALL ("ID");
SET TERM ^ ;

Код



/* Triggers only will work for SQL triggers */

CREATE TRIGGER "G_T_SECTOR" FOR "SECTOR" 
ACTIVE BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID= GEN_ID (G_SECTOR,1);
END
 ^

COMMIT WORK ^
SET TERM ;^


/* Table: SESSION, Owner: SYSDBA */

CREATE TABLE "SESSION" 
(
  "ID"    INTEGER NOT NULL,
  "TIME_SESSION"    VARCHAR(8) NOT NULL,
  "NUMBER_HALL"    INTEGER NOT NULL,
  "CINEMA_ID"    INTEGER NOT NULL,
 PRIMARY KEY ("ID")
);
ALTER TABLE "SESSION" ADD FOREIGN KEY ("CINEMA_ID") REFERENCES CINEMA ("ID");
ALTER TABLE "SESSION" ADD FOREIGN KEY ("NUMBER_HALL") REFERENCES HALL ("ID");
SET TERM ^ ;


/* Triggers only will work for SQL triggers */

CREATE TRIGGER "G_T_SESSION" FOR "SESSION" 
ACTIVE BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID= GEN_ID (SESSION,1);
END
 ^

COMMIT WORK ^
SET TERM ;^



Код


/* Table: TICKET, Owner: SYSDBA */

CREATE TABLE "TICKET" 
(
  "ID"    INTEGER NOT NULL,
  "TICKET_COST"    INTEGER NOT NULL,
  "NUMBER_SESSION"    INTEGER NOT NULL,
  "PLACE_HALL"    INTEGER NOT NULL,
  "CUSTOMER_ID"    INTEGER NOT NULL,
 PRIMARY KEY ("ID")
);
ALTER TABLE "TICKET" ADD FOREIGN KEY ("NUMBER_SESSION") REFERENCES SESSION ("ID");
ALTER TABLE "TICKET" ADD FOREIGN KEY ("PLACE_HALL") REFERENCES PLACE_HALL ("ID");
ALTER TABLE "TICKET" ADD FOREIGN KEY ("CUSTOMER_ID") REFERENCES CUSTOMER ("ID");
SET TERM ^ ;


/* Triggers only will work for SQL triggers */

CREATE TRIGGER "G_T_TICKET" FOR "TICKET" 
ACTIVE BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID= GEN_ID (G_TICKET,1);
END
 ^

COMMIT WORK ^
SET TERM ;^



Нужно вывести кол-во секторов (sector) по залам (hall) (название зала, кол-во секторов)

Присоединённый файл ( Кол-во скачиваний: 4 )
Присоединённый файл  KINO.GDB 756,00 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Interbase"
Alex

Обязательно указание:

1. Версию InterBase (Firebird, Yaffil)

2. Способа доступа (ADO, BDE, IBX и т.д.)

  • КАК ПРАВИЛЬНО ОФОРМИТЬ КОД - ЗДЕСЬ
  • КАК ПРАВИЛЬНО УКАЗАТЬ ТЕКСТ ОШИБКИ - ЗДЕСЬ
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • FAQ раздела лежит здесь!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С Уважением, Akella.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Firebird, Interbase | Следующая тема »


 




[ Время генерации скрипта: 0.0527 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.