Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Построчный select [D6, MSSQL]


Karlson ©   (2004-02-18 20:56:00) 

Добрый вечер! Нужно организовать построчную выборку.
Заранее спасибо!


Fay   (2004-02-19 15:52:00) [1]

declare @v varchar(33)
select @v = 'BlaBlaBla'

update T2 set
 T2.Field1 = T1.Field1,
 T2.Field2 = @v
from Table1 T1 join Table2 T2 on T1.ID = T2.ID


Silver_   (2004-02-19 14:15:00) [2]

что есть

> (причем id нужно искать каждый раз для каждой копируемой
> записи)

разве ID тебе неизвестен

INSERT INTO t2 .../UPDATE t2
SET t2.DataOper,
 t2.Fld1,
 t2.Fld2
(SELECT NOW(), Fld1, Fld2 FROM t1 WHERE ...)
WHERE t2.id = t1.id


за точность не ручаюсь писал прямо здесь но идея думаю понятна если что пороюсь у меня подобное рабочее есть

PS. Задача не особо понятна


mtb   (2004-02-19 14:00:00) [3]

имеются две таблицы asd2, asd1 необходимо из первой перенести во вторую значение поля 'cont'

или я неправильно понял задачу

UPDATE asd1
SET cont =
       (SELECT cont
     FROM asd2
     WHERE id = asd1.id)


Delirium   (2004-02-19 13:36:00) [4]

F1 + cursor


Karlson   (2004-02-19 11:53:00) [5]

Описываю: есть таблица1 с данными (select выбирает по этим данным информацию из нескольких других таблиц), есть таблица2, в которую нужно переместить данные из таблицы1 (причем id нужно искать каждый раз для каждой копируемой записи). Кроме того, при перенесении информации из таблицы1 нужно добавить просто одинаковую текстовую информацию в некоторые поля таблицы2, которых нет в таблице1 (например, дату операции)


Nikolay M.   (2004-02-19 11:22:00) [6]

Задачу опиши, да?
Если нужно выбрать записи по некоторому условию и увеличить одно поле на какую-то величину, то такое решается одним запросом и телепатирование насчет курсоров тогда пустая трата времени.


KSergey   (2004-02-19 09:10:00) [7]

Курсор.
Только всегда надо 100 раз как минимум подумать - а нет ли другого решения. Курсоры в исполнении MS SQL очень тяжелы (для сервера).


ЮЮ   (2004-02-19 03:48:00) [8]

>выбралась одна строка, я к ней, к примеру, что-то добавлю и выборка пошла бы дальше.

Пиши свой сервер, т.к. все стандартные,IMHO, возвращают (не на клиента, естественно) сразу все данные, удовлетворяющие запросу :-)

>я к ней, к примеру, что-то добавлю

А это что-то есть среди данных БД? Тогда поручи это серверу. Возможности у MS SQL очень большие и у него это получится гораздо лучше.


just me   (2004-02-18 22:16:00) [9]

Пиши хранимую процедуру, в ней используй курсор, выбирай данные по-строчно


Karlson   (2004-02-18 21:45:00) [10]

Мне нужно, чтобы выбралась одна строка, я к ней, к примеру, что-то добавлю и выборка пошла бы дальше.


Romkin   (2004-02-18 21:34:00) [11]

Все выборки построчны. Бери любую


Наверх

Титульная страница Поиск, карта сайта Написать письмо