Главная страница
    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
3-1103028188
alex145
2004-12-14 15:43
2005.01.16
Показывается только две колонки


1-1104146426
zrv
2004-12-27 14:20
2005.01.16
Как сделать счетчик времени


3-1102667724
galexis
2004-12-10 11:35
2005.01.16
Вопрос от недопонимания транзакций.


14-1104315639
MAINUSER
2004-12-29 13:20
2005.01.16
ПРОГРАММИСТЫ ОБЪЕДИНЯЙТЕСЬ


1-1104404279
Руслана
2004-12-30 13:57
2005.01.16
Вопрос по RXlib





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский