Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Простецкий запрос 
:(
    Опции темы
Knorkator
Дата 19.5.2008, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Добрый день, многомудрые винградовцы.
Microsoft SQL Server 2005
Существует 2 таблицы с данными.

Таблица А, в которой хранятся комиссии.
Код (ключ, генерируется сервером)
Название Комиссии

Таблица Б, в которой список депутатов.
Код (ключ, генерируется сервером)
Фамилия Депутата

И таблица В, в которой хранятся список председателей.
Код Депутата
Код комиссии

И форма с добавлением нового заседания, в котором кнопочка.

{
DataModule2->ADOConnection1->BeginTrans();
  try{
    DataModule2->ADOQuery3->SQL->Add("Insert into A (nazv) values ('"+Edit1->Text+"')"); //Добавляет комиссии
    DataModule2->ADOQuery3->ExecSQL(); // тут всё ясно
    DataModule2->ADOQuery3->SQL->Text = "SELECT @@IDENTITY AS Id"; // Берем сгенерированный код комиссии
    DataModule2->ADOQuery3->Open();
    DataModule2->ADOQuery3->SQL->Add("Insert into B (kod_k) values ('"+DataModule2->ADOQuery3->FieldByName("Id")->AsString+"')");// вроде как загнать в таблицу В значение сгенерированного кода комиссии.
    DataModule2->ADOQuery3->Close();
    DataModule2->ADOQuery3->SQL->Add("Insert into В (kod_d) values ('"+Edit4->Text+"')");//добавляется код депутата который хранится в Edit4, а туда он берется из таблицы с депутатами    DataModule2->ADOQuery3->ExecSQL();
    DataModule2->ADOConnection1->CommitTrans();
  }
  catch(...){
    DataModule2->ADOConnection1->RollbackTrans();
  }     


Проблемка в том что это ничерта не работает, естественно в том что транзакция не правильно сформированна.
Схематично это выглядит так.
user posted image
Буду очень благодарен.

PM MAIL   Вверх
Akina
Дата 19.5.2008, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

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



Цитата(Knorkator @  19.5.2008,  18:54 Найти цитируемый пост)
форма с добавлением нового заседания

Информацию о сущности "заседание" в структуре таблиц обнаружить не удалось.

Цитата(Knorkator @  19.5.2008,  18:54 Найти цитируемый пост)
И таблица В, в которой хранятся список председателей.

Если у каждой комиссии не более одного председателя - перенести код председателя в таблицу комиссий (Б), а таблицу В удавить на корню.



--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Knorkator
Дата 19.5.2008, 18:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата

Цитата(Knorkator @  19.5.2008,  18:54 ) 
форма с добавлением нового заседания 


Информацию о сущности "заседание" в структуре таблиц обнаружить не удалось.


Пардон, не добавление заседания, а добавление комиссии
Цитата

а таблицу В удавить на корню.

Да, действительно так, большое спасибо, так и поступлю.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Составление SQL-запросов | Следующая тема »


 




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


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

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