Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите составить запрос к БД 
V
    Опции темы
bankir
Дата 16.10.2007, 22:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



подскажите пожалуйста ибо сам никак не могу додуматься.  smile   smile 
есть БД на SQL2000 называется "base" в ней 2 таблицы tabl1 и tabl2. В tabl1 четыре поля "A, B, C, D" а в tabl2 три поля "B1, C1, D1".
Собственно задача заключается в переносе данных из tabl2 в tabl1 (B<-B1, C<-C1, D<-D1), но в таблицу 1 надо в поле A записать результат (максимальное число из поля A tabl1+1)

автоинкрементальное поле здесь не подходит. И еще, это все надо делать в одной транзакции.
 smile 

Заранее благодарен.
PM Skype   Вверх
Lunatikus
Дата 17.10.2007, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 29.6.2007

Репутация: 1
Всего: 6



была бы возможность получить из table2 перечисление номеров записей,можно было бы,но как сделать такой запрос не знаю.Если же тебе необязательно,что бы номера вставляемых строк следовали четко друг за другом без пробелов в значениях(т.е. не 1,2,3,4... а вроде 1,4,6,8,5...),тогда проще,запрос можно составить на основе любого уникального поля в table2.


--------------------
TheSin - небольшое игровое сообщество взрослых и молодых(L2,WoW,Aion,RFonline and other not mmorpg,not computer games).
сайт гильдии
PM MAIL   Вверх
bankir
Дата 17.10.2007, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



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

А по поводу последовательных номеров - мне очень важно чтобы они шли друг за другом. Получается, что у меня один пользователь добавляет несколько записей и другой пользователь добавляет несколько записей одновременно. Мне очень важно чтобы номера для одного пользователя шли последовательно (1,2,3,4) и для другого последовательно (5,6,7,8). Нельзя чтобы они шли вперемешку.

С автоинкрементом я не хотел работать потому что боялся, что с ним будет трудно работать когда я буду резервировать номера, а потом обновлять их через update. Не хотелось бы чтобы в нумерациях потом были пустые окна (1,2,3,8,9,10). Например если я зарезервирую номера 15,16,17, а последний будет 10 то получится окно в 4 значения.
PM Skype   Вверх
bankir
Дата 18.10.2007, 07:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



всем спасибо
PM Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.1138 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.