Форум программистов, компьютерный форум, киберфорум
Oracle
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/76: Рейтинг темы: голосов - 76, средняя оценка - 4.97
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,680
1

Как вставить в таблицу несколько строк?

19.05.2015, 23:43. Показов 13821. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Друзья! То есть у меня никак не выходит. Вот такими командами я их вставляю и без толку:

SQL
1
2
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc) VALUES('BR01', 'BRS01', '8 inch teddy bear', 5.99, '8 inch teddy bear, comes with cap and jacket');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc) VALUES('BR02', 'BRS01', '12 inch teddy bear', 8.99, '12 inch teddy bear, comes with cap and jacket');
Ошибка:

ORA-00911: invalid character

На самом деле ошибка липовая. Эти строки взяты мной из одного файлы- sql-скрипта (прилагался к книге). Камень преткновения- точка с запятой между колмандами и вообще ЧТО-ТО между командами. По раздельности всё отрабатывает на ура
SQL
1
INSERT INTO Orders(order_num, order_date, cust_id) VALUES(20005, TO_DATE('2012-05-01', 'yyyy-mm-dd'), '1000000001')
SQL
1
INSERT INTO Orders(order_num, order_date, cust_id) VALUES(20006, TO_DATE('2012-01-12', 'yyyy-mm-dd'), '1000000003');
И безразлично, есть точка с запятой в конце или нет. Но я же не могу целый скрипт по отдельности вводить! Вот версия сервера (сервер где-то на просторах инета, не на локальной машине)
 
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for 64-bit Windows: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production

Спасибо, кто откликнется.

Добавлено через 1 час 33 минуты
Чуток разобрался. Оказывается, интерфейс, с которым я работаю, предполагает 2 варианта для ввода команд- одиночные команды и собственно скрипты (мой вариант). То есть чтобы мой вариант сработал, нужно создать скрипт, озаглавить его как-то, запустить. Делов, короче. А в поле для одиночных команд несколько команд не прокатывают. Не одобряю.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.05.2015, 23:43
Ответы с готовыми решениями:

Как вставить несколько пустых строк в таблицу
по одной не вариант через правую кнопку, как поставить например 5 строк ? все ребят, схитрил...

Как вставить сразу несколько строк в таблицу Word
Здравствуйте. Подскажите, можно ли вставить сразу несколько строк в таблицу Word без Selection?

Вставить несколько пустых строк в таблицу
Добрый день, помогите пож. справиться с такой задачей было 0001 Радиатор 00000 0001 Конвектор...

как вставить диапазон (несколько строк)
Уважаемые друзья! Подскажите пожалуйста с помощью каких манипуляций можно вернуть диапазон с...

4
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
20.05.2015, 09:47 2
Цитата Сообщение от kravam Посмотреть сообщение
Не одобряю
Вообще то изначально предполагается посылка на сервер по одной инструкции SQL. Поскольку обрабатываются они именно по одной. Если хочется послать сразу много, то эти инструкции заключаются в блок PL/SQL. Это штатное поведение. А что там позволяют какие-то интерфейсы - это уже отдельная тема.
0
3 / 3 / 1
Регистрация: 04.05.2015
Сообщений: 23
21.05.2015, 09:11 3
SQL
1
2
3
4
BEGIN
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc) VALUES('BR01', 'BRS01', '8 inch teddy bear', 5.99, '8 inch teddy bear, comes with cap and jacket');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc) VALUES('BR02', 'BRS01', '12 inch teddy bear', 8.99, '12 inch teddy bear, comes with cap and jacket');
END;
0
45 / 41 / 50
Регистрация: 04.04.2015
Сообщений: 80
22.05.2015, 12:33 4
Oracle 11 SQL
1
2
3
INSERT ALL
INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc) VALUES('BR01', 'BRS01', '8 inch teddy bear', 5.99, '8 inch teddy bear, comes with cap and jacket')
INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc) VALUES('BR02', 'BRS01', '12 inch teddy bear', 8.99, '12 inch teddy bear, comes with cap and jacket')
0
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
22.05.2015, 13:17 5
Цитата Сообщение от San40ys Посмотреть сообщение
INSERT ALL
INSERT ALL используется не для того, чтобы сделать несколько простых INSERT, а чтобы сделать вставку в несколько таблиц по результатам одного запроса, т.е предполагает наличие subquery.
Другими словами, вместо того, чтобы написать несколько INSERT...SELECT с одинаковым запросом, мы благодаря многотабличному INSERT пишем этот SELECT только один раз.
0
22.05.2015, 13:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2015, 13:17
Помогаю со студенческими работами здесь

Как добавить несколько строк в таблицу
Здравствуйте. Есть таблица table{number integer, date datetime, any_polya} number и date вместе...

Как вставить одну или несколько строк в текстовый файл?
Насколько я понял, только перезаписью исходного файла с добавлением нужных строк в соответствующее...

Как внести в таблицу несколько тысяч строк?
Приветствую. В PHP из массива с данными собираются строки типа: Insert into sometable values(......

Как одновременно добавить несколько строк в таблицу Access?
А возможно одновременно добавить несколько строк в таблицу Access? например как при вставке в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru