Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Возвратить ID вставленной записи   Найти похожие ветки 

 
worldmen   (2009-04-29 17:29) [0]

Как узнать ID вставленной записи, чтоб передать его другой форме. Запись вставляю с помощью TpFIBQuery, ID генерится генератором - gen_id(gen_id_tst,1)


 
Медвежонок Пятачок ©   (2009-04-29 17:30) [1]

Там же все есть в самой библиотеке.
ТОлько прочитать доку


 
worldmen   (2009-04-29 19:12) [2]

Можете носом ткнуть - ничего не нашел
Скачал pdf файл на русском и посмотрел хелп для Д7 на англ.


 
ТД   (2009-04-29 19:58) [3]


>  ID генерится генератором - gen_id(gen_id_tst,1)

где генерится?
уже прочитал наизусть http://www.ibase.ru/devinfo/generator.htm ?


 
Медвежонок Пятачок ©   (2009-04-29 22:51) [4]

Можете носом ткнуть - ничего не нашел

Все необходимое есть в паблишед свойствах фибдатасета.


 
Виталий Панасенко   (2009-04-30 10:04) [5]


> Медвежонок Пятачок ©   (29.04.09 22:51) [4]

Но нету у FIBQuery...

> worldmen   (29.04.09 17:29)  

Запрос бы показал


 
Медвежонок Пятачок ©   (2009-04-30 10:43) [6]

Как узнать ID вставленной записи, чтоб передать его другой форме.

Здесь не про запрос надо спрашивать, а скорее всего править консерваторию.

Подозреваю что речь идет о двух формах. Одна с гридом и кнопками new edit delete, другая для операции едит.

И у автора проблема обработки кнопки new.
То есть он в модуле с гридом делает инсерт, затем хочет окрыть вторую форму.

Инсерт надо делать во втором модуле а передавать туда -1 в качесвте ключа. Если редактируемый датасет окажется пустым, делать аппенд, иначе делать едит (случай редактирования "старой" записи)


 
SHM ©   (2009-05-07 17:16) [7]

Всегда работаю с СУБД через самописные промежуточные классы. Не уверен, что сейчас реализую самым оптимальным способом но логика такая:
1. Получив команду на инсерт выполняем резервирование ключа, добавлением пустой записи в базу. Каждая таблица расширена на несколько служебных полей. Одно из таких SESSION_ID используется для различных целей в том числе и резервирования.
2. Сразу после добавления пустой записи, происходит выборка последней записи с текущим SESSION_ID.
3. Получаем локальную запись, инициализированную по правилам настроек таблицы настороне СУБД, в том числе и с заданным ID записи. Остается только задать поля и отправить на UPDATE


 
Медвежонок Пятачок ©   (2009-05-07 17:19) [8]

колеса в твоем велосипеде квадратные однако.



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

Форум: "Базы";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.058 c
15-1265405405
Юрий
2010-02-06 00:30
2010.08.27
С днем рождения ! 6 февраля 2010 суббота


15-1273624795
Sab
2010-05-12 04:39
2010.08.27
Раздача файлов web server


15-1272443577
worldmen
2010-04-28 12:32
2010.08.27
SQL остаток товара на складе


15-1271316405
12
2010-04-15 11:26
2010.08.27
PHP. Как наследовать?


15-1275009183
wl
2010-05-28 05:13
2010.08.27
Путешествие из Петербурга в Москву (точнее наоборот)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский