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

Вниз

IBQuery и GeneratorField   Найти похожие ветки 

 
REA   (2008-07-16 12:21) [0]

Уважаемые мастера, подскажите как использовать связку TIBQuery и GeneratorField, если требуется вставить запись (insert) и получить значение генератора (например до вставки).

По идее значение GeneratorField должно присваиваться полю OnNewRecord, но там нет ни полей как таковых (только параметры Insert) ни вызова Append.

Каким образом можно настроить GeneratorField, чтобы при вставке записи в некий параметр Insert попадало требуемое значение генератора?


 
Johnmen ©   (2008-07-16 15:10) [1]

сходить на http://www.ibase.ru и почитать про генераторы
там и примеры будут...


 
REA   (2008-07-16 15:59) [2]

Нужен ответ на конкретный вопрос. Вопрос не про генераторы, а про TIBQuery.


 
Johnmen ©   (2008-07-16 16:04) [3]

Ну не хочешь, не ходи. Дело твоё...


 
REA   (2008-07-16 16:13) [4]

Уже успел посмотреть все что можно про сабж. Просмотрел исходники. Иначе бы не спрашивал.


 
Поросенок Винни-Пух ©   (2008-07-16 16:14) [5]

По идее значение GeneratorField должно присваиваться полю OnNewRecord

так и происходит если выбрана опция на OnNewRecord генерить значение


 
Правильный$Вася   (2008-07-16 16:15) [6]


> Уже успел посмотреть все что можно про сабж. Просмотрел
> исходники.

теперь подумай, попробуй
повтори цикл сначала


 
REA   (2008-07-16 16:19) [7]

>теперь подумай, попробуй повтори цикл сначала

по существу вопроса пожалуйста

>так и происходит если выбрана опция на OnNewRecord генерить значение

генератор вызывает Apply в том случае, если генератору присвоено поле и Dataset открыт. В данном случае открыть его не удается потому что 1) это не нужно 2) SQL запрос <> select


 
Поросенок Винни-Пух ©   (2008-07-16 16:21) [8]

2) SQL запрос <> select

<Цитата>


Это пипец.
Какой тогда тебе OnNewRecord?


 
Поросенок Винни-Пух ©   (2008-07-16 16:22) [9]

ой, мама.
у него там insert набабахан, а чувак ждет прихода генератора.


 
REA   (2008-07-16 16:23) [10]

>Какой тогда тебе OnNewRecord

да любой штатный способ получения значения генератора подойдет.
Перефразирую вопрос: как используя компонент TIBQuery и запрос Insert получить значение генератора для этого запроса через GeneratorField?


 
REA   (2008-07-16 16:25) [11]

>у него там insert набабахан, а чувак ждет прихода генератора.
именно так. открывать ничего не нужно - нужно вставить сгененрированное значение.


 
Поросенок Винни-Пух ©   (2008-07-16 16:29) [12]

стандартный sql на получение значения генератора на клиенте.
в факе есть, в доке есть, везде есть.
удачи.


 
Поросенок Винни-Пух ©   (2008-07-16 16:31) [13]

Перефразирую вопрос: как используя компонент TIBQuery и запрос Insert получить значение генератора для этого запроса через GeneratorField?

ответ: никак!


 
REA   (2008-07-16 17:21) [14]

>ответ: никак!

тогда так: какие еще существуют малозатратные способы (с точки зрения производительности и кодирования) получения значения генератора для Insert?

вариант с IBDataSet мне не кажется очень хорошим, т.к. там требуется открывать DataSet (select). Использование генератора "в лоб" - т.е. получением запросом из системной таблицы тоже не лучший вариант - хочется чтобы работали компоненты, поскольку для этого их и придумывали.


 
Правильный$Вася   (2008-07-16 17:43) [15]


> перефразирую: как используя компонент TIBQuery и запрос Insert получить
> значение генератора для этого запроса через GeneratorField?

перефразирую: как используя бензопилу и бензин получить елку через оптический прицел

> по существу вопроса пожалуйста

уж существеннее некуда
готовые решения только в "начинающим"


 
Поросенок Винни-Пух ©   (2008-07-16 17:56) [16]

select gen_id(:p_gen_name,:p_step)


 
REA   (2008-07-16 17:58) [17]

>как используя бензопилу и бензин получить елку через оптический прицел

не вижу елки и пилы. задача проще некуда - все тоже самое, что в IBDataSet, но без Select. Вместо 10 бесполезных постов уже можно было дать несколько решений.


 
REA   (2008-07-16 18:00) [18]

>select gen_id(:p_gen_name,:p_step)

См. выше - желательно использовать компоненты. Получить генератор запросом я могу, только неужели для такой тривиальной задачи уже не написан код?


 
Поросенок Винни-Пух ©   (2008-07-16 18:02) [19]

См. выше - желательно использовать компоненты

А кто-то  запрещает?


 
Поросенок Винни-Пух ©   (2008-07-16 18:03) [20]

Получить генератор запросом я могу,

Но хочется не запросом, а телепатией?



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

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

Наверх




Память: 0.48 MB
Время: 0.051 c
15-1231596547
Slider007
2009-01-10 17:09
2009.03.15
С днем рождения ! 2 января 2009 пятница


2-1232617282
nst1974
2009-01-22 12:41
2009.03.15
создание клиент серверные части БД


2-1232983616
Мишаняя
2009-01-26 18:26
2009.03.15
Открыть в проводнике


15-1231752808
Добежал
2009-01-12 12:33
2009.03.15
Хранение списка услуг


2-1232649379
batya-x
2009-01-22 21:36
2009.03.15
Сглаженный текст





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский