Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2013, 17:08   #11
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Ну так чего ждете?
инфа по всем лыжам у вас есть: таблица liji, и инфа по тем что уже взяли: prokat
осталось от первой отнять вторую инфу, с учетом "сейчас" и останется - те что еще свободные.
а минус бэ равно цэ, чего не понятно?
eval вне форума Ответить с цитированием
Старый 03.06.2013, 17:14   #12
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
я вот и не знаю как сделать чтобы лыжи №1 блокировались на эти 2 часа
Можно программно проверять при попытке регистрации выдачи лыж, наверно (?) можно триггером на вставку контролировать, можно вставку делать SQL-процедурой и в ней проверять
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 03.06.2013, 17:31   #13
PROkaZZZniK
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 121
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Можно программно проверять при попытке регистрации выдачи лыж, наверно (?) можно триггером на вставку контролировать, можно вставку делать SQL-процедурой и в ней проверять
Я вот тоже читал про триггеры, но так и не понял как сделать(
PROkaZZZniK вне форума Ответить с цитированием
Старый 03.06.2013, 17:39   #14
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

триггеры тут ничем не помогут.
делать надо 2 проверки
1 при загрузке
2 при выдаче
это если многопользовательский режим
при однопользовательском, хватит просто контроль времени, но и тут надо смотреть 2 раза.. вощем дальше дело техники
eval вне форума Ответить с цитированием
Старый 03.06.2013, 17:47   #15
PROkaZZZniK
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 121
По умолчанию

eval, Вы пример можете показать, я просто неочем в SQl-запросах. Простые(элементарные) могу, а вот с более сложными беда...
PROkaZZZniK вне форума Ответить с цитированием
Старый 03.06.2013, 18:24   #16
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Код:
select * from liji as l
left join prokat on as p on p.id_lij = l.id_lij and DATE_ADD(l.data_arendi, interval kol_Casov HOUR) > NOW()
inner join lijnik s on s.id_lijnik = p.id_lijnik
этот запрос должен выдать все лыжи, добавить к тем что уже выданы когда и кому выдали.
типа из этого уже можно выбирать кому что и когда можно дать,
а при выдаче еще раз проверить, вдруг время еще не истекло или успели повторно выдать..
(запрос ежели чего надо подправить я тут "писал")

Последний раз редактировалось eval; 03.06.2013 в 19:03. Причина: запрос подправил
eval вне форума Ответить с цитированием
Старый 04.06.2013, 19:45   #17
PROkaZZZniK
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 121
По умолчанию

решил пойди другим путем, и наконец то понял задание. Таблица прокат, имеется ввиду не архив всех аренд лыж, а именно сколько лыж задействовано в данный момент. Поскольку там надо чтобы запрещала выдавать одни и те же лыжи пока их не вернули, сделал поле id_lij ключевым)))).
таблица выглядет вот так

Код:
CREATE TABLE	`prokat` (

	`id_prokat` integer NOT NULL AUTO_INCREMENT,
	`id_lij` integer NOT NULL,
	`id_lijnik` integer NOT NULL,
	`data_n` DATETIME NOT NULL,
	`data_k` DATETIME NOT NULL,
	`stoimost` integer NOT NULL,
	PRIMARY KEY(`id_prokat`),
	FOREIGN KEY (id_lij) REFERENCES `liji`(id_lij),
	FOREIGN KEY (id_lijnik) REFERENCES `lijnik`(id_lijnik)
	);
В своей программе(клиент) сделал вывод таблицы по запросу:

Код:
select lijnik.Fam, lijnik.Ima, lijnik.Ot, liji.id_lij, liji.marka, liji.model, 
prokat.data_n, prokat.data_k, prokat.stoimost 
FROM liji, lijnik, prokat
WHERE prokat.id_lijnik=lijnik.id_lijnik AND prokat.id_lij=liji.id_lij;

В этой таблице есть кнопка добавить запись.
При ее нажатии открывается форма с textbox.
Вопрос, если я на эту форму нанесу все поля которые выводятся т.е. ФИО, Id_lij, марка, модель, дата_выдачи, дата_возврата, стоимость. То при написании запроса он ведь должен добавить как я понимаю записи в разные таблицы(это возможно?) и еще если вот например используем таблицу лыжи в нем поля (id_lij, `marka`, `model`, `rostovka`, `kol_sezonov`, `sostoyanie_lij`), а я использую при запросе только вывод из таблицы лыжи поля(Id_lij, марка, модель) то как быть потом при отображении таблицы Лыжи? Она будет неполной?
PROkaZZZniK вне форума Ответить с цитированием
Старый 04.06.2013, 20:02   #18
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

и на кой эта таблица теперь нужна? выбросить чтоб не мешала, и запрос следом

Последний раз редактировалось eval; 04.06.2013 в 20:05.
eval вне форума Ответить с цитированием
Старый 04.06.2013, 20:32   #19
PROkaZZZniK
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 121
По умолчанию

Зачем запрос выбрасывать? таблица это как связь между 1 и 2 таблицей + добавлена дата и цена
PROkaZZZniK вне форума Ответить с цитированием
Старый 04.06.2013, 20:45   #20
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

это все можно держать и в лыжах, тогда зачем эта таблица? очевидно не зачем, скрипач не нужен
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связь многие ко многим gbolgov Microsoft Office Access 6 30.05.2013 15:22
Связь многие ко многим serox БД в Delphi 3 06.05.2013 22:45
Связь многие-ко-многим Аллен SQL, базы данных 1 05.11.2012 18:17
Связь многие ко многим %$PROregRAMi$t% Microsoft Office Access 9 11.06.2011 23:30
Связь многие-ко-многим andirock2112 БД в Delphi 10 12.04.2009 22:05