Отвечает: Victor Pyrlik
Здравствуйте, ЧУБАКОВ ЛЕОНИД ГЕННАДЬЕВИЧ!
Для работы с массивом данных, впрочем как и графики, мультимедиа и другими данными (например, файлами Word, Excel) надо использовать тип данных BLOB, в зависимости от контекста – или 1 – текстовый, или 0 – бинарный (в Вашем случае, бинарный).
CREATE OR ALTER TRIGGER TESTTBL_BI FOR TESTTBL ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.ID_T
BL IS NULL) THEN NEW.ID_TBL = GEN_ID(GEN_TESTTBL_ID,1); END
Для работы с такими данными (бинарными) использовать SQL запросы можно, но для текстовых данных.. для бинарных это не имеет смысла и следовательно нет возможности. Но есть UDF, т.е. функции во внешних библиотеках, позволяют нормально работать с таким типом полей. В Delphi можно использовать стендартные компоненты для работы с базами данных, например TIBQuery. Для записи бинарных данных (а Ваш случай – это массив
целых чисел, т.е. бинарные данные) использовать TStream; Например, Stream1 := IBQuery1.CreateBlobStream(IBQuery1ARRAY_TBL,bmReadWrite); и дальше уже работать как с простым потоком.. Можно писать из файлов и сохранять в файлы непосредственно методами поля BLOB : IBQuery1ARRAY_TBL.SaveToStream(); IBQuery1ARRAY_TBL.LoadFromStream(); IBQuery1ARRAY_TBL.SaveToFile(); IBQuery1ARRAY_TBL.LoadFromFile();
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.