Вниз
Скачать: CL | DM;

Добавление записей в таблицу IB   Найти похожие ветки 

← →
Ярослав   (2004-11-28 20:34) [0]

Заравствуйте, у меня такой вопрос:
как мне добавить сразу несколько записей в таблицу IB при помощи запроса из Delphi.
Пробовал так:
INSERT INTO Table1 (xxx, yyy)
 VALUES ("aaa", "aaa");
INSERT INTO Table1 (xxx, yyy)
 VALUES ("bbb", "bbb");
INSERT INTO Table1 (xxx, yyy)
 VALUES ("ccc", "ccc");
Delphi на ; ругается, как быть...


← →
DrPass ©   (2004-11-28 20:38) [1]

Выполни этот запрос три раза


← →
Ярослав   (2004-11-28 20:47) [2]

До этого я сам додумался, но мне надо за 1 раз
в IB Concole и IB Expert это эе как то делается, а мне из Delphi надо.


← →
YurikGL ©   (2004-11-28 20:57) [3]


> Ярослав   (28.11.04 20:47) [2]

Ты уверен, что IBExpert делате это за один раз?


← →
Ярослав   (2004-11-28 21:04) [4]

И в IB ExperteВ и в IB Concole я так делал


← →
YurikGL ©   (2004-11-28 21:15) [5]


> Ярослав   (28.11.04 21:04) [4]

И каким запросом?

Я к тому, что ты уверен, что IBExpert не посылает эти запросы отдельно друг от друга в одной транзакции?


← →
Ярослав   (2004-11-28 21:22) [6]

Именно тем, что я написал, есть там редактор скриптов, вставляешь в него этот запрос и он его выполняет.


← →
DrPass ©   (2004-11-28 21:27) [7]


> Именно тем, что я написал, есть там редактор скриптов, вставляешь
> в него этот запрос и он его выполняет.

Ну и что? Он читает построчно и выполняет по одному запросу


← →
Ярослав   (2004-11-28 21:30) [8]

Ага а если в скрипте уменя хранимая процедура за одно + триггер и все это перемежается вставками данных он тоже построчно это выполняет, оригинально...


← →
DrPass ©   (2004-11-28 21:42) [9]

Молодой человек, если вы не можете написать обычный интерпретатор, почему вы так уверены, что на это не способны разработчики IBExpert? Или по-вашему, это сервер Interbase одним широким движением выполняет все, что ему подсунули в скрипте?


← →
Ярослав   (2004-11-28 21:45) [10]

Вот интересно зачем писать интерпритатор когда вся проблемма состоит в ;


← →
Ярослав   (2004-11-28 21:54) [11]

А вот такой код
Create procedure Procedure1
as begin
INSERT INTO Table1 (xxx, yyy)
VALUES ("aaa", "aaa");
INSERT INTO Table1 (xxx, yyy)
VALUES ("bbb", "bbb");
INSERT INTO Table1 (xxx, yyy)
VALUES ("ccc", "ccc");
end
съедает с удовольствием...


← →
midavik ©   (2004-11-29 11:39) [12]

Вроде так:
INSERT INTO Table1 (xxx, yyy)
VALUES ("aaa", "aaa")
UNION
INSERT INTO Table1 (xxx, yyy)
VALUES ("bbb", "bbb")
UNION
INSERT INTO Table1 (xxx, yyy)
VALUES ("ccc", "ccc")


← →
Sergey13 ©   (2004-11-29 11:49) [13]

2 Ярослав   (28.11.04 20:34)
А чем IBScript не катит?

2[12] midavik ©   (29.11.04 11:39)
Ты сам это пробовал? Работает?


← →
midavik ©   (2004-11-29 12:08) [14]

Действительно не работает. Сорри. Забыл что UNION катит для запросов типа SELECT.


← →
msguns ©   (2004-11-29 14:54) [15]

>Ярослав   (28.11.04 21:54) [11]
А вот такой код
Create procedure Procedure1
as begin
INSERT INTO Table1 (xxx, yyy)
VALUES ("aaa", "aaa");
INSERT INTO Table1 (xxx, yyy)
VALUES ("bbb", "bbb");
INSERT INTO Table1 (xxx, yyy)
VALUES ("ccc", "ccc");
end
съедает с удовольствием...

Так ведь этот "код" не корректит таблицу, а создает ХП. А вот уже ХП (которая выполняется другим запросом, вставляет 3 записи. Правда, кому нужны такие записи и соответсвенно, такая ХП, жрецы, видимо, умалчивают..
Если надо добавить некскольно фиксированных записей ы таблицу одним запросом (не знаю зачем, но если нада), создай временную (внешнюю) таблицу, добавь туда эти несколько записей, а затем одним запросом INSERT INTO.. SELECT FROM.. добавь все записи в таблицу БД.

Но все же интересно зачем аппендицит вырезать через горло ?


← →
Deniz ©   (2004-11-30 07:00) [16]

> msguns ©   (29.11.04 14:54) [15]
>Но все же интересно зачем аппендицит вырезать через горло ?

Это не аппендицит через горло, а гланды через ж...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.024 c
1-1102619226
LedWorm
2004-12-09 22:07
2004.12.26
Копирование в буфер


14-1102498783
Delphin
2004-12-08 12:39
2004.12.26
Умер комп


1-1102594607
Александр второй
2004-12-09 15:16
2004.12.26
Что означает параметр s в функций ParamStr(s)


4-1099758380
Flex
2004-11-06 19:26
2004.12.26
Имя компьютера.


1-1102697804
SoT1
2004-12-10 19:56
2004.12.26
Dll




   Наверх