Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > C/C++: Базы данных > таблица в таблице |
Автор: pesekot 03.12.11, 18:01 |
всем привет. Нужно реализовать БД ЖКХ 1 таблица - пользователь: адрес, квартира, инициалы, и так далее. <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> CREATE TABLE `abonent` ( `Kod_adresa` INT(11) NOT NULL, `street` VARCHAR(60) NOT NULL, `house` INT(11) NOT NULL, `flat` INT(11) NOT NULL, `room` INT(11) NOT NULL, `initials` VARCHAR(50) NOT NULL, `number` INT(11) NOT NULL, `aream` INT(11) NOT NULL, PRIMARY KEY (`Kod_adresa`) ) 2 таблица - квитанция: № квитанции, тип платежа, цена по норме, льготы и так далее. <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> CREATE TABLE `kvutan` ( `kod_adresy` INT(11) NOT NULL, `nom_kvutan` INT(11) NOT NULL, `services` VARCHAR(50) NOT NULL, `debt` FLOAT NULL DEFAULT NULL, `prices` VARCHAR(50) NULL DEFAULT NULL, `count` FLOAT NULL DEFAULT NULL, `recount` FLOAT NULL DEFAULT NULL, `hose` FLOAT NULL DEFAULT NULL, `allk` FLOAT NULL DEFAULT NULL, `allpay` FLOAT NULL DEFAULT NULL, PRIMARY KEY (`kod_adresy`) ) вопрос: Как можно реализовать, чтобы код адереса который я ввожу в таблицу квитанция был один, а записей тарифов и цен много? например: ![]() а уже по коде адреса я смогу переслать ее абоненту с таким адресом |
Автор: Densource 04.12.11, 05:21 |
В квитанциях убери первичный ключ, либо построй его по полям Адрес, Сервис, Плательщик |
Автор: Bas 10.01.12, 10:43 |
Цитата Densource @ В квитанциях убери первичный ключ, либо построй его по полям Адрес, Сервис, Плательщик Оставить надо но на поле номера квитанции (не должно быть двух квитанций с одинаковым номером). Создать таблицы товаров купленных на эту квитанцию. |
Автор: vetalbon 17.04.12, 16:13 |
Ой что ты ту намудрил |
Автор: MIF 17.04.12, 20:07 |
Разбей таблицу квитанция на две: квитанцияHeader(id, код адреса, дата...) и квитанцияLine (id квитанции, id услуги, цена, количество и т.д.). |