![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сохранить данные своего типа?
TableUser © (2007-04-17 12:28:00)Подсажите, пожалста. В базах не силен :(
Таблица на Paradox'е. Хочу в нее помимо имеющихся столбцов, затолкать массивчик с данными (одним столбцом).
В DB Desctop'е добавил столбец с типом Binary (правильно?), но не пойму как с ним работать (т.е. положить туда мой массивчик и потом считать)?
ЗЫ: В факах и на форуме поискал, но не нашел...
TableUser (2007-04-17 14:51:00) [1]Чето лыжи не едут :)
Для теста сделал две функции
пишущая в таблицу
procedure TfrmOrders.Button1Click(Sender: TObject);
var instr: string;
strm:TStream;
s:integer;
begin
instr:='123456789';
with DataMod.tbZak do
begin
Append;
strm:=CreateBLOBStream(FieldByName('PostDocs'),bmWrite);
strm.Write(instr, Length(instr)+1);
s:=strm.Size;
strm.Free;
Post;
end;
Edit1.Text:=IntToStr(s)+':'+instr;
end;
читающая из нее
procedure TfrmOrders.DBGrid1CellClick(Column: TColumn);
var outstr:string[100];
strm:TStream;
s:integer;
begin
with DataMod.tbZak do
begin
Edit;
strm:=CreateBLOBStream(FieldByName('PostDocs'),bmRead);
s:=strm.Size;
strm.Read(outstr,s);
strm.Free;
cancel;
end;
Edit1.Text:=IntToStr(s)+':'+outstr;
end;
Ошибок не выдает. Но при считывании в эдите строчка левая какая-то. Хотя размер считывает один-к-одному...
В чем я ошибся. Помогите, плиз.
Desdechado (2007-04-17 12:32:00) [2]Dataset.CreateBlobStream
Jan1 (2007-04-17 12:28:00) [3]
> Таблица на Paradox'е. Хочу в нее помимо имеющихся столбцов,
> затолкать массивчик с данными (одним столбцом).
а почему не вертикально?