Alex-San |
Отправлено: 30.12.2003, 08:50 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 16
|
Добрый день
С наступающим!
Есть ли возможность использовать BLOB-поля (текстовые) как INI-файлы?
Нужно не совсем типизированную информацию запихать в таблицу..
Заранее спасибо за ответ |
|
Valdemar |
Отправлено: 30.12.2003, 16:25 |
|
Мастер участка
Группа: Участник
Сообщений: 433
|
В BLOB поля можно записыть что угодно. |
|
Alex-San |
Отправлено: 31.12.2003, 09:09 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 16
|
Это понятно, но как?
Можно ли связать эти компоненты? |
|
Nick |
Отправлено: 31.12.2003, 10:05 |
|
Машинист паровоза
Группа: Участник
Сообщений: 247
|
INI теряет скорость, хотя это сейчас не очень актуально, ради удобства и программиста и опытного пользователя.
Разработай лучше свою структуры и пиши/читатай ее.
ну например.
typedef struct
{
int Data;
} TBRInt;
typedef struct
{
double Data;
} TBRDbl;
typedef struct
{
int Len;
char Data[255];
} TBRStr;
union BlobRecordData
{
TBRInt intData;
TBRDbl dblData;
TBRStr strData;
}
typedef BlobRecord
{
char brType; //тип данных
char brName[30]; // наименование параметра
BlobRecordData Data;
}
При чтении читаешь первый байт и наименование, определяешь тип
если наименование нужное читаешь данные, если не определяешь адрес следующего парамется изходя из типа данных.
Если тебе не нужна эта морока.
Берешь блоб пишешь его в файл и открываешь как INI и обратно так же.
|
|
** pasha |
Отправлено: 31.12.2003, 13:26 |
|
Не зарегистрирован
|
Alex-San
Я так понимаю, вы хотели-бы совместить работу с BLOB-полями,
с возможностью работы методами TIniFile
типа ReadInteger() WriteInteger() ReadString() и другими...
(а хранить этот 'ini' в BLOB-поле базы данных)
Возможно имеет смысл временно создавать такой ini-файл,
записывать в него информацию через эти методы,
а потом этот файл (можно весь) помещать в нужное
BLOB-поле Базы Данных,
а при считывании информации — считывать файл из BLOB-поля
и записывать его на диск в виде ini-файла и читать из файла
методами TIniFile.
|
|