Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2015, 01:52   #21
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Отбой тревоге
Я не служил армии ... Я не ненавижу ваши ментовские жаргон тревоге пишите простие человечески языке
xxbesoxx вне форума Ответить с цитированием
Старый 18.04.2015, 06:36   #22
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
Mat Bourn
СУБД Какая? В разных СУБД по разному можно получить ключевое поле только что вставленной записи.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.04.2015, 09:45   #23
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Access у него.

SELECT @@IDENTITY - получить значение последнего добавленного автоинкрементного ключа
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 18.04.2015, 12:34   #24
Mat Bourn
Форумчанин
 
Регистрация: 13.04.2015
Сообщений: 140
По умолчанию

a = ADOQuery1->SQL->Add("SELECT IDENT_CURRENT id_Nastroiki");
Mat Bourn вне форума Ответить с цитированием
Старый 18.04.2015, 13:44   #25
Mat Bourn
Форумчанин
 
Регистрация: 13.04.2015
Сообщений: 140
По умолчанию

В ADOQuery3 прописал Select @@Identity. Затем активировал компонент.
В программе написал следующее

ADOQuery3->SQL->Clear();
Edit1->Text = ADOQuery3->SQL->Add("SELECT max(id_Nastroiki) FROM Nastroiki");
ADOQuery3->Active=True;


Выводит 0.
Mat Bourn вне форума Ответить с цитированием
Старый 18.04.2015, 20:45   #26
Mat Bourn
Форумчанин
 
Регистрация: 13.04.2015
Сообщений: 140
По умолчанию

Все. Сделал.
Разместил на форме 3 компонента ADOQuery.

В первый написал:
INSERT INTO Nastroiki (id_CvetForms,id_StilForms,id_Razme rForms) values (:id_CvetForms,:id_StilForms,:id_Ra zmerForms)

Во второй:
INSERT INTO Polzovateli (id_Name,id_Fam,id_Otch,id_Parol,id _Nastroiki) values (:id_Name,:id_Fam,:id_Otch,:id_Paro l,:id_Nastroiki)

В третий:
Select @@IDENTITY as lastId


В программе:



//Добавляю данные в таблицу Nastroiki.

ADOQuery1->Parameters->ParamByName("id_CvetForms")->Value = "Синий";
ADOQuery1->Parameters->ParamByName("id_StilForms")->Value = "Stil";
ADOQuery1->Parameters->ParamByName("id_RazmerForms")->Value = "18";
ADOQuery1->ExecSQL();

//Узнаю ID номер свежедобавленой строки в таблице Nastroiki

ADOQuery3->Open();
a = ADOQuery3->FieldByName("lastId")->AsInteger;
ADOQuery3->Close();


//Добавляю найденный ID номер и введенные данные пользователем в таблицу Polzovateli

ADOQuery2->Parameters->ParamByName("id_Name")->Value = Edit1->Text;
ADOQuery2->Parameters->ParamByName("id_Fam")->Value = Edit2->Text;
ADOQuery2->Parameters->ParamByName("id_Otch")->Value = Edit3->Text;
ADOQuery2->Parameters->ParamByName("id_Parol")->Value = StrToInt(Edit4->Text);
ADOQuery2->Parameters->ParamByName("id_Nastroiki")->Value = a; //ID_NOMER
ADOQuery2->ExecSQL();

Всем спасибо за помощь. Отдельная благодарность xxbesoxx.
Mat Bourn вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Срочно нужна помощь по SQL @ngel111 Фриланс 2 29.12.2014 14:59
SQL нужна помощь 5cek БД в Delphi 7 03.02.2014 07:33
Нужна помощь с SQL MaskEdit БД в Delphi 8 13.01.2009 17:00