команды ДМЛ

dykee
Дата: 21.09.2015 19:33:25
задача: изменить зарплату на 7% тем кто работает больше 10 лет.
create or replace procedure laba4_1 (god number) is
begin
  update scott_2 t set t.sal= (t.sal*1.07) where (sysdate-t.hiredate)>god;
  end laba4_1;

компилирует но в таблице sal выдает неправельную заработную плату((
например при заработной плате в 800 должно быть 856))
dykee
Дата: 21.09.2015 20:09:09
Все работает прошу прощения, удалите пост:)
Q.Tarantino
Дата: 21.09.2015 20:10:46
dykee
задача: изменить зарплату на 7% тем кто работает больше 10 лет.
create or replace procedure laba4_1 (god number) is
begin
  update scott_2 t set t.sal= (t.sal*1.07) where (sysdate-t.hiredate)>god;
  end laba4_1;


компилирует но в таблице sal выдает неправельную заработную плату((
например при заработной плате в 800 должно быть 856))

а каков результат то получается?
и commit где?
Да ну
Дата: 21.09.2015 20:12:52
dykee
задача: изменить зарплату на 7% тем кто работает больше 10 лет.
create or replace procedure laba4_1 (god number) is
begin
  update scott_2 t set t.sal= (t.sal*1.07) where (sysdate-t.hiredate)>god;
  end laba4_1;

компилирует но в таблице sal выдает неправельную заработную плату((
например при заработной плате в 800 должно быть 856))

sysdate-t.hiredate дает дни, а не года.

rtfm months_between
Relic Hunter
Дата: 21.09.2015 20:24:29
dykee
create or replace procedure laba4_1 (god number) is
begin
  update scott_2 t set t.sal= (t.sal*1.07) where (sysdate-t.hiredate)>god;
  end laba4_1;
А зачем тут скобки, алиасы для единственной таблицы? Да, ты задрал зарплату всем, кто работает больше недели. Щедрый мальчик:)
hardhouse
Дата: 21.09.2015 20:28:49
да и в задаче сказано "изменить"
может, нужно было в меньшую сторону:)
dykee
Дата: 21.09.2015 20:58:43
Q.Tarantino,
результат получается, comm не нужен? Зачем тут он? Дело в другом мне сказали что у меня изменяются года а не месяца что в этом случае делать?
dykee
Дата: 21.09.2015 21:01:03
Да ну,
как прописать что б давала года?Через это?
автор
rtfm months_between
как это будет выглядеть при том что я не ввожу конкретные даты мне нужно по всему столбцу hiredate смотреть
andreymx
Дата: 21.09.2015 21:27:33
dykee
задача: изменить зарплату на 7% тем кто работает больше 10 лет.
create or replace procedure laba4_1 (god number) is
begin
  update scott_2 t set t.sal= (t.sal*1.07) where (sysdate-t.hiredate)>god;
  end laba4_1;
препода расстрелять за косую постановку
а потом такие прогеры и пишут такие же кривые магазины и сцайты
dykee
Дата: 21.09.2015 21:33:22
andreymx,
вот постновка:
1. Створіть таблицю EMP в власній схемі як копію таблиці Scott.emp.
2. Розробити підпрограму для реалізації наступних операцій:
а. додавала зарплату усім співробітникам, які пропрацювали більш ніж 10 років, у розмірі N відсотків де N власний номер за журналом;
Я в журнале 7 по этому 7%