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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> trigger on insert 
V
    Опции темы
KaKTyCc
Дата 7.6.2006, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



есть таблица month  в ней список месяцев 
есть таблица students

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

Код

select month into ... from month
insert into journal_visit  values (id_journal_visit.nextval, :New.id_student, month, 0, 0);


Как мне в цикле организовать, чтобы для всех месяцев добавлялись записи 
--------------------
Мой блог
PM MAIL WWW   Вверх
skyboy
Дата 7.6.2006, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

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



KaKTyCc, а словами пояснить - низзя? 
PM MAIL   Вверх
KaKTyCc
Дата 7.6.2006, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



словами, это для нового студента генерация журнала посещаемости на все месяцы 
--------------------
Мой блог
PM MAIL WWW   Вверх
denislpopov
Дата 7.6.2006, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Код

insert into journal_visit  
select id_journal_visit.nextval, :New.id_student, month, 0, 0
from month;
 
PM MAIL WWW ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
skyboy
Дата 7.6.2006, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

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



KaKTyCc, И? Что надо сделать с этим журналом? зачем триггер - неясно. Имеется таблица - список месяцев. Имеется журнал, куда надо вставить инфо о студенте. Что за инфо? Update'ом тут точно не обойтись? Как-то странно - студента добавили и сгенерировали записи с 0... Он же в то время не числился, так? Поясни цель. Зачем что-то генерировать? 
PM MAIL   Вверх
KaKTyCc
Дата 7.6.2006, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



поясняю, при добавлении НОВОГО студента для него нужно создать журнал посещаемости

создается он вот так 

Код

insert into journal_visit  values (id_journal_visit.nextval, :New.id_student, 'Сентябрь', 0, 0);
insert into journal_visit  values (id_journal_visit.nextval, :New.id_student, 'Октябрь', 0, 0);
......


где id_student - ID только что добавленного в таблицу students студента
а 0 потому что он только поступил, и не успел еще пива попить в парке во время лекций

Добавлено @ 16:11 
denislpopov,  СПАСИБО

Добавлено @ 16:14 
Код

CREATE OR REPLACE TRIGGER T_GENJOURNALVISIT
AFTER INSERT
ON METODIST.STUDENTS
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
DECLARE

BEGIN
 insert into journal_visit select id_journal_visit.nextval, :New.id_student, month, 0, 0 from month;
   
END t_genjournalvisit;
 
--------------------
Мой блог
PM MAIL WWW   Вверх
skyboy
Дата 7.6.2006, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

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



А если студент перешёл во время зимней сессии? Ты будешь создавать на него записи в журнале на сентябрь-декабрь? Зачем это? ты в базу "журнал посещаемости" каждый день пишешь? или раз в месяц?

Добавлено @ 16:18 
впрочем, если решение было найдено, то чего ещё мне надо? smile 
PM MAIL   Вверх
KaKTyCc
Дата 7.6.2006, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



куда перешел? раз в месяц пишутся данные 
--------------------
Мой блог
PM MAIL WWW   Вверх
skyboy
Дата 7.6.2006, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

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



Цитата(KaKTyCc @  7.6.2006,  16:05 Найти цитируемый пост)
 он только поступил, и не успел еще пива попить в парке во время лекций

- поступают в начале года. А в зимнюю сессию можно перейти в/из группы, соотвественно надо корректировать журнал. Но не создавать же на студента, перешедшего в группу, записи в журнале, которые никогда уже не изменятся с "0" на какое-нить число. Я тебя правильно понял - ты моделируешь журнал посещаемости в ВУЗе? 
PM MAIL   Вверх
KaKTyCc
Дата 7.6.2006, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



зачем корректировать, в таблице journal_visit только id студента, перевод из группы в группу не влияет на него 
--------------------
Мой блог
PM MAIL WWW   Вверх
KaKTyCc
Дата 7.6.2006, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



denislpopov,  У меня недостаточно постов, чтобы изменять репутацию пользователей. Необходимо 100 постов   smile  
--------------------
Мой блог
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Oracle"
Zloxa
LSD

Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:

  • при создании темы давайте ей осмысленное название, описывающее суть проблемы
  • указывайте используемую версию базы, способ соединения и язык программирования
  • при ошибках обязательно приводите код ошибки и сообщение сервера
  • приводите код в котором возникла ошибка, по возможности дайте тестовый пример демонстрирующий ошибку
  • при вставке кода используйте соответсвующие теги: [code=sql] [/code] для подсветки SQL и PL/SQL кода, [code=java] [/code] - для Java, и т.д.

  • документация по Oracle: 9i, 10g, 11g
  • книги по Oracle можно поискать здесь
  • действия модераторов можно обсудить здесь

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

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


 




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


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

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