Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / не хочет производить команду insert в таблицу (вопрос от новичка) / 16 сообщений из 16, страница 1 из 1
20.07.2017, 16:44
    #39492514
Wolfyteze
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
Суть такова. Выбираем максимальное значение department_id, прибавляем к полученному значение 10. Добавляем новую строку в таблицу.

[SRC PLSQL]SET SERVEROUTPUT ON

VARIABLE v_dept_id NUMBER

DECLARE
v_max_deptno NUMBER;
v_dept_name departments.department_name%TYPE := 'Education';
BEGIN
SELECT
MAX(department_id)
INTO
v_max_deptno
FROM
departments;
:v_dept_id := v_max_deptno+10;
-- dbms_output.put_line(v_max_deptno||'___'||v_dept_name );
INSERT INTO departments (DEPARTMENT_ID,DEPARTMENT_NAME,LOCATION_ID)
VALUES (v_dept_id,v_dept_name ,NULL);

END;
Вот такая ошибка:
[SRC PLSQL]
ORA-06550: line 13, column 16:
PL/SQL: ORA-00984: column not allowed here
ORA-06550: line 12, column 1:

Что я делаю не так? Поправьте пожалуйста.
...
Рейтинг: 0 / 0
20.07.2017, 16:50
    #39492522
123йй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
Wolfyteze,

дай угадаю что в 13 строке. наверное автор : v_dept_id := v_max_deptno+10;
...
Рейтинг: 0 / 0
20.07.2017, 16:56
    #39492528
Wolfyteze
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
123йй,

у меня и без нее не получается выполнить команду вставки
Код: plsql
1.
2.
INSERT INTO  departments (DEPARTMENT_ID,DEPARTMENT_NAME,MANAGER_ID,LOCATION_ID) 
                         VALUES (10,fsdfsdf,1,1);
...
Рейтинг: 0 / 0
20.07.2017, 17:03
    #39492533
orawish
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
Wolfyteze,

синтаксис блюсти надо.
fsdfsdf - что это? например, литерал тут поможет
...
Рейтинг: 0 / 0
20.07.2017, 17:07
    #39492539
Wolfyteze
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
orawish,

v_dept_name departments.department_name%TYPE := 'Education';

по сути вот какое значение должно задаться в DEPARTMENT_NAME. Я просто уже много часов провел за этой ошибкой,у меня там много закомментированного кода).
...
Рейтинг: 0 / 0
20.07.2017, 17:10
    #39492541
stax..
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
Wolfyteze,

определится с :v_dept_id

нет двоиточия
VALUES (v_dept_id

.....
stax
...
Рейтинг: 0 / 0
20.07.2017, 17:11
    #39492543
Wolfyteze
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
orawish,

максимальный номер по department_id находит и благополучно выводит значение. Вся проблема начинается со вставкой...Возможно по синтаксису меня кто поправит.
...
Рейтинг: 0 / 0
20.07.2017, 17:16
    #39492546
Wolfyteze
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
stax..,

Все, спасибо...наверно совсем на этом заморочился, не увидел явный недочет)). Все добавляется и все работает))).
...
Рейтинг: 0 / 0
20.07.2017, 18:23
    #39492603
stax..
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
Wolfytezestax..,

Все, спасибо...наверно совсем на этом заморочился, не увидел явный недочет)). Все добавляется и все работает))).

повторно
определитесь нужна ли вам "бинд" переменная (с двоеточеем)

мож достаточно
Код: plsql
1.
2.
3.
DECLARE
 v_dept_id NUMBER;
 v_max_deptno NUMBER;



и дальше использовать перемннную pl/sql v_dept_id (без :)

.....
stax
...
Рейтинг: 0 / 0
20.07.2017, 18:49
    #39492621
Wolfyteze
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
stax..,

Спасибо, но тут стоял не вопрос как рациональнее, а как использовать именно через bind-переменную).Никакого практического применения не преследует, так как пока осваиваю Oracle))).
Еще бы кто помог oracle forms and reports 6i установить, было бы замечательно)).
...
Рейтинг: 0 / 0
20.07.2017, 18:53
    #39492624
andrey_anonymous
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
WolfytezeЕще бы кто помог oracle forms and reports 6i установить, было бы замечательно)).
Если нет конкретных планов идти в сторону OEBS или подобного динозавра - то не рекомендую, время Forms вроде как закончилось.
...
Рейтинг: 0 / 0
20.07.2017, 19:41
    #39492644
Wolfyteze
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
andrey_anonymous,

Это я прекрасно понимаю, но специфика работы требует изучения forms 6i. К сожалению даже потренироваться не на чем, попросту не могу установить, только пару дней зря потратил). А так параллельно APEX изучаю)).
...
Рейтинг: 0 / 0
20.07.2017, 20:36
    #39492657
andrey_anonymous
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
Слишком много лет прошло - мало что помню.
Полагаю, установить получится только в каком-нибудь суровом режиме совместимости.
Ну и клиент oracle там внутри старый, как фекалии динозавра.
Если сервер БД свежий - будут проблемы с подключением.
Первая из тех, о которых помню - территория в настройках NLS.
Клиент знает только CIS, которого не знает сервер - потому придется указать, к примеру, AMERICA.
И вообще в матрицу совместимости заглянуть.

...тут есть подфорум Forms, попробуйте там поспрошать.
...
Рейтинг: 0 / 0
21.07.2017, 09:04
    #39492770
stax..
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
andrey_anonymousСлишком много лет прошло - мало что помню.
Полагаю, установить получится только в каком-нибудь суровом режиме совместимости.
Ну и клиент oracle там внутри старый, как фекалии динозавра.
Если сервер БД свежий - будут проблемы с подключением.
Первая из тех, о которых помню - территория в настройках NLS.
Клиент знает только CIS, которого не знает сервер - потому придется указать, к примеру, AMERICA.
И вообще в матрицу совместимости заглянуть.

...тут есть подфорум Forms, попробуйте там поспрошать.

c 11-коq "нормально" работает и с
UKRAINIAN_UKRAINE.CL8MSWIN1251

наскоко помню нюнас в том что
сначала ставим клиента 11-ки, потом в другой хом девелопер

геморой с установкой немножко есть

.....
stax
...
Рейтинг: 0 / 0
21.07.2017, 09:05
    #39492771
stax..
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
Wolfytezestax..,

Спасибо, но тут стоял не вопрос как рациональнее, а как использовать именно через bind-переменную).Никакого практического применения не преследует, так как пока осваиваю Oracle))).
Еще бы кто помог oracle forms and reports 6i установить, было бы замечательно)).

готовтесь, кровушки попьет, особенно репорт

.....
stax
...
Рейтинг: 0 / 0
21.07.2017, 12:03
    #39492897
Я все вижу
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не хочет производить команду insert в таблицу (вопрос от новичка)
Wolfyteze...наверно совсем на этом заморочился

Да ты вообще не заморачивался. Даже не пытался.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / не хочет производить команду insert в таблицу (вопрос от новичка) / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]