Форум: "Базы";
Текущий архив: 2005.01.16;
Скачать: [xml.tar.bz2];
ВнизTMemoField Найти похожие ветки
← →
OlegL (2004-12-14 09:48) [0]Люди как работается с memo полями (TMemoField)
← →
Александр Иванов © (2004-12-14 09:50) [1]А что именно интересует?
Если вообще - то весело :).
← →
OlegL (2004-12-14 09:54) [2]Запись в эти поля.
← →
Александр Иванов © (2004-12-14 10:05) [3]LoadFromFile
LoadFromStream
← →
OlegL (2004-12-14 10:08) [4]А поподробней можно?
← →
OlegL (2004-12-14 10:10) [5]Всё спасибо, разобрался :-))
← →
OlegL (2004-12-14 11:02) [6]Вообще-то не совсем разобрался. Пишу
TMemoField(DsDbfTable1.Fields.FieldByName("pname")).LoadFromStream(m_str)
и не работатет.
← →
Александр Иванов © (2004-12-14 11:10) [7]Что говорит?
И какой тип поля pname?
Какая БД?
← →
OlegL (2004-12-14 11:17) [8]Не говорит ничего, просто поле пустое.
pname - мемо
Работаю с dbf посредством компонент Degisy Data
← →
Александр Иванов © (2004-12-14 11:34) [9]Да ... Такие компонены не видел.
Но попробуй так:
TBlobField(DsDbfTable1.Fields.FieldByName("pname")).LoadFromStream(m_str)
← →
OlegL (2004-12-14 11:35) [10]пробовал уже .. то же самое
← →
OlegL (2004-12-14 11:38) [11]А str какого типа должен быть? Я делаю так :-)))
t_str := TStringStream.Create(fieldbyname("pname").Value);
m_str := TMemoryStream.Create();
m_str.LoadFromStream(t_str);
← →
Александр Иванов © (2004-12-14 11:42) [12]Что-то я не понял.
Весь код выглядит так:
t_str := TStringStream.Create(fieldbyname("pname").Value);
m_str := TMemoryStream.Create();
m_str.LoadFromStream(t_str);
TMemoField(DsDbfTable1.Fields.FieldByName("pname")).LoadFromStream(m_str)
???
← →
OlegL (2004-12-14 11:45) [13]точнее
t_str := TStringStream.Create(DataSet2.FieldByName("pname").Value);
m_str := TMemoryStream.Create();
m_str.LoadFromStream(t_str);
TMemoField(DsDbfTable1.Fields.FieldByName("pname")).LoadFromStream(m_str);
← →
Александр Иванов © (2004-12-14 12:02) [14]А метод Post вызываешь?
← →
Александр Иванов © (2004-12-14 12:20) [15]
procedure TForm1.Button1Click(Sender: TObject);
var
Stream1: TBlobStream;
begin
Table1.First;
while not Table1.Eof do
begin
Table2.Append;
Stream1 := TBlobStream.Create(TBlobField(Table1.FieldByName("pname")), bmRead);
Table2PNAME.LoadFromStream(Stream1);
Table2.Post;
Table1.Next;
end;
end;
← →
OlegL (2004-12-14 14:44) [16]А если
Table1.FieldByName("pname")
не блоб
← →
sniknik © (2004-12-14 15:14) [17]> А если
> Table1.FieldByName("pname")
> не блоб
то все одно какойто тип да присутствует, тогда там есть asТипПоля
st:= Table1.FieldByName("pname").asString; к примеру. (в принципе и мемо поле так можно, хотя от компонент наверное зависит... ADO может остальные ... хз. проверь)
← →
Александр Иванов © (2004-12-14 15:19) [18]procedure TForm1.Button1Click(Sender: TObject);
var
Stream1: TStringStream;
begin
Table1.First;
while not Table1.Eof do
begin
Table2.Append;
Stream1 := TStringStream.Create(Table1.FieldByName("pname").AsString);
Table2PNAME.LoadFromStream(Stream1);
Table2.Post;
Table1.Next;
end;
end;
В данном случае поле PName из первой табички имеет тип Character
← →
sniknik © (2004-12-14 15:30) [19]Александр Иванов © (14.12.04 15:19) [18]
зачем же такие извраты? ;)
procedure TForm1.Button1Click(Sender: TObject);
begin
Table1.First;
while not Table1.Eof do begin
Table2.Append;
Table2PNAME.AsString:= Table1.FieldByName("pname").AsString[1];
Table1.Next;
end;
if Table2.State in (dsEdit, dsInsert) then Table2.Post;
end;
вполне полноценная замена в случае если поле PName имеет тип Character (1 символ так понимаю ;)
← →
Александр Иванов © (2004-12-14 15:35) [20]Да, действительно изврат. Уже не в ту сторону изначально мысли повернулись. :).
← →
OlegL (2004-12-14 17:49) [21]
> sniknik ©
Со StringStream я срану испробовал ...глухо и такTable2PNAME.AsString:= Table1.FieldByName("pname").AsString[1];
тоже не идёт.
← →
Александр Иванов © (2004-12-14 17:51) [22]В [18] и [19] код рабочий.
← →
OlegL (2004-12-14 17:59) [23]Может всё дело в Foxpro
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.01.16;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.034 c