![]() |
|
Модераторы: skyboy |
![]()
|
|
| sergey6288 |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 480 Регистрация: 22.9.2008 Где: Минск Репутация: нет Всего: -11 |
нужно создать функцию
Связь: teachers.id=kurs.id_prepod Написать функцию подсчета количества курсов преподаваемых заданным преподавателем. предпологаю
Добавлено через 12 минут и 8 секунд Create functions count_kurs (kurs.id_prepod) returns int; begin select count(name) INTO total from teachers,kurs where teachers.id=kurs.id_prepod returns total; end; выдает сообщение об ошибке You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'functions count_kurs (kurs.id_prepod) returns int' at line 1 Это сообщение отредактировал(а) skyboy - 11.2.2009, 23:14 |
||||
|
|||||
| sergey6288 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 480 Регистрация: 22.9.2008 Где: Минск Репутация: нет Всего: -11 |
нужно также написать прцедуру и триггер
Написать процедуру добавлении курса в БД (один курс может читаться несколькими преподавателями одновременно). Написать триггер, который при удалении преподавателя, работает по следующему принципу: если в БД имеются курсы, преподаваемые данным преподавателем, то для данных курсов установить в поле id_prepod установить значение 0. |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 0 Всего: 130 |
Тебе же написали:
Ну так это, нужно - пиши, я и на это тоже добро даю. Кстати, имей в виду, что NAME может быть зарезервированным СУБД словом. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| sergey6288 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 480 Регистрация: 22.9.2008 Где: Минск Репутация: нет Всего: -11 |
||||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
||||
|
||||
| Bikutoru |
|
|||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 1 Всего: 22 |
Ох и ошибок же у тебя!
Во-первых, CREATE FUNCTION, а не CREATE FUNCTIONS. Во-вторых, `kurs.id_prepod` - это не нормальное имя для параметра функции (плюс не указан его тип) В-третьих, select count(name) INTO total - переменная total не объявлена В-четвертых, после строки с SELECT нет ; В-пятых, SELECT не возвращает количество курсов конкретного преподавателя. В-шестых, не "returns total", а "RETURN total" Имхо, должно быть так:
-------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |