Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.036 c
10-1080216496
Comwad
2004-03-25 15:08
2005.01.16
Два SmartAgent-a в одной подсети.


1-1103581432
GanibalLector
2004-12-21 01:23
2005.01.16
PCHAR


6-1098984838
Anatoly P
2004-10-28 21:33
2005.01.16
Сеанс в CGI stand-alone приложении


14-1104326972
Рамиль
2004-12-29 16:29
2005.01.16
Настройка eMule в локальной сетке


14-1104139505
Hypercube
2004-12-27 12:25
2005.01.16
Ющенко победил





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский