1

Тема: Додати до дати 2 роки (Оракл)

Написати збережену процедуру, яка дозволяє збільшити дату видавництва кожної книги, яка
відповідає шаблону на 2 роки. Шаблон передається в якості параметра в процедуру.
Ось приклад на ms sql management studio:

create procedure dateofbookpublication 
@booktemplate varchar(MAX) 
as
begin 
update [BOOKS (book)] set DateofPublish =Dateadd(YEAR,2,DateofPublish)
where [BOOKS (book)].NameBook like '%'+@booktemplate+'%'
end
select NameBook, DateofPublish from [BOOKS (book)]
execute dateofbookpublication 'вій'
go

Як це реалізувати в Ораклі
Ось початок:

create or replace procedure publication_books(name_of_book varchar2)
as 
begin 
update books add_months(b.date_of_publish,24) as new_publish_date from dual; 

2

Re: Додати до дати 2 роки (Оракл)

create or replace procedure publication_books(name_of_book varchar2)
as 
begin 
update books set DATE_OF_PUBLISH=add_months(date_of_publish,24)where NAME_BOOK=name_of_book; 
end;

3 Востаннє редагувалося Droid 77 (24.07.2020 00:23:27)

Re: Додати до дати 2 роки (Оракл)

Вибачте що втрутився в розмову.
Нащо взагалі таке потрібно?
Змінювати дату видавництва в магазині?
Нащо? Це ж омана.

4

Re: Додати до дати 2 роки (Оракл)

  1. Це публічне питання на форумі, а не розмова. Вибачення зайві.

  2. Вочевидь, це навчальне завдання.

  3. Можу уявити ситуацію, де частина книжок була підтягнута з іншої бази, де зберігалися не повні дати, а з якоїсь початкової (на кшталт часових позначок UNIX з 1.1.1970), але при конвертації було взято неправильну дату, і тепер треба виправити.

5

Re: Додати до дати 2 роки (Оракл)

Droid 77 написав:

Вибачте що втрутився в розмову..

Вибачте що продовжую оффтоп, але навiть якшо це реальна задача з життя - то це книги, а не мясо. Нiчого поганого в "пiдкручуваннi" дати не бачу.

6

Re: Додати до дати 2 роки (Оракл)

це просто навчальне завдання