Компонент TIBQuery выполняет все стандартные функции компонента запроса и наследует возможности класса
TiBCustomDataSet.
Как и у остальных компонентов запросов, свойство
property SQL: TStrings;
содержит текст запроса и позволяет редактировать его. С этим свойством связан специализированный редактор (рис. 18.2).
Для просмотра текста запроса можно использовать свойство
property Text: string;
Параметры запроса хранятся в стандартном свойстве
property Params: TParams;
Общее число параметров запроса возвращает свойство
property ParamCount: Word;
При создании новых записей в редактируемых наборах данных компонентов запросов возникает проблема присвоения значений полям первичных индексов. Очевидно, что при сохранении новой записи в базе данных поле первичного индекса будет инкрементировано средствами сервера InterBase (соответствующими генератором и триггером). Однако получить это значение в приложении можно только сохранив изменения и обновив набор данных, что зачастую требует больших затрат ресурсов.
Для решения этой проблемы в компоненте TiBQuery используется свойство
property GeneratorField: TIBGeneratorField;
Редактор свойства (рис. 18.2) позволяет связать генератор с инкрементируемым полем.
Рис. 18.2. Редактор свойства
GeneratorField компонента
TiBQuery
Список Generator позволяет выбрать один
из доступных генераторов базы данных. Список Field задает инкрементируемое
поле набора данных. В строке Increment By определяется шаг прибавляемого
значения поля.
Группа радиокнопок Apply Event определяет
событие, при котором срабатывает генератор:
On
New Record —
при создании новой записи;
On
Post — при сохранении новой записи;
On
Server — генератор управляется сервером.
Редактор свойства
GeneratorField попросту присваивает значения полям экземпляра классаTIBGeneratorField.
Методы-обработчики событий полностью соответствуют
классу TiBCustom-DataSet (см. табл. 18.2).
Знаете ли Вы, почему "черные дыры" - фикция? Согласно релятивистской мифологии, "чёрная дыра - это область в пространстве-времени, гравитационное притяжение которой настолько велико, что покинуть её не могут даже объекты, движущиеся со скоростью света (в том числе и кванты самого света). Граница этой области называется горизонтом событий, а её характерный размер - гравитационным радиусом. В простейшем случае сферически симметричной чёрной дыры он равен радиусу Шварцшильда". На самом деле миф о черных дырах есть порождение мифа о фотоне - пушечном ядре. Этот миф родился еще в античные времена. Математическое развитие он получил в трудах Исаака Ньютона в виде корпускулярной теории света. Корпускуле света приписывалась масса. Из этого следовало, что при высоких ускорениях свободного падения возможен поворот траектории луча света вспять, по параболе, как это происходит с пушечным ядром в гравитационном поле Земли. Отсюда родились сказки о "радиусе Шварцшильда", "черных дырах Хокинга" и прочих безудержных фантазиях пропагандистов релятивизма. Впрочем, эти сказки несколько древнее. В 1795 году математик Пьер Симон Лаплас писал: "Если бы диаметр светящейся звезды с той же плотностью, что и Земля, в 250 раз превосходил бы диаметр Солнца, то вследствие притяжения звезды ни один из испущенных ею лучей не смог бы дойти до нас; следовательно, не исключено, что самые большие из светящихся тел по этой причине являются невидимыми." [цитата по Брагинский В.Б., Полнарёв А. Г. Удивительная гравитация. - М., Наука, 1985] Однако, как выяснилось в 20-м веке, фотон не обладает массой и не может взаимодействовать с гравитационным полем как весомое вещество. Фотон - это квантованная электромагнитная волна, то есть даже не объект, а процесс. А процессы не могут иметь веса, так как они не являются вещественными объектами. Это всего-лишь движение некоторой среды. (сравните с аналогами: движение воды, движение воздуха, колебания почвы). Подробнее читайте в FAQ по эфирной физике.