Базы данных - модели, разработка, реализация
выходной параметр, определяющий номер читательского
@BIRTH_DAY varchar(8),
@NUM_READER int OUTPUT,
/* выходной параметр, определяющий номер читательского билета*/
@Y_N int OUTPUT.
/* выходной параметр, определяющий был ли читатель ранее записан
в библиотеку*/
@COUNT_BOOKS int OUTPUT
/* выходной параметр, определяющий количество книг, которое числится
за читателем*/)
AS
/* переменная, в которой будет храниться номер читательского билета,
если читатель уже был записан в библиотеку */
DECLARE @N_R int
/* определение наличия читателя */
EXEC @N_R = CK_READER @NAME_READER,@BIRTH_DAY
IF @N_R= 0 Or @N_R Is Null
/* если читатель с заданными характеристиками не найден, т. е. переменной
@N_R присвоено значение нуль или ее значение неопределено, перейдем
к назначению для нового читателя нового номера читательского билета */
BEGIN
/* так как мы номер читательского билета определили как инкрементное поле,
то в операторе ввода мы его не указываем система сама назначит новому
читателю очередной номер */
267
INSERT INTO READER(NAME_READER,ADRES.HOOM_PHONE.WORK_PHONE.ВIRTH_DAY)
VALUES (@NAME_READER.@ADRES.@HOOM_PHONE.@WORK_PHONE.Convert(smal1datetime,
@BIRTH_DAY.4) )
/* в операторе INSERT мы должны преобразовать символьную переменную @BIRTH_DAY
в тип данных sma11datetime, который определен для поля дата рождения
BIRTH_DAY. Это преобразование мы сделаем с помощью встроенной функции
Transact SQL Convert */
/* теперь определим назначенный номер читательского билета */
select @NUM_READER = NUM_READER FROM READER
WHERE NAME_READER = @NAME_READER
AND convert(varchar(8),BIRTH_DAY.4)=@BIRTH_DAY
/* здесь мы снова используем функцию преобразования типа, но в этом случае
нам необходимо преобразовать поле BIRTH_DAY из типа smalldatetime
к типу varchar(8), в котором задан входной параметр @BIRTH_DAY */
Select @Y_N =0
/* присваиваем выходному параметру @Y_N значение 0 (ноль), что
соответствует тому,что данный читатель ранее в нашей библиотеке
не был записан */
Select @COUNT_BOOKS = 0
/* присваиваем выходному параметру, хранящему количество книг, числящихся
Содержание
Назад
Вперед
Fore
kc
.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий