Форум: "Базы";
Текущий архив: 2003.08.21;
Скачать: [xml.tar.bz2];
ВнизИзменение данных в таблице Paradox Найти похожие ветки
← →
Artemij (2003-07-28 13:47) [0]Здравствуйте! Я пытаюсь програмным путем изменить данные одного из нескольких полей в таблице, т.е. необходимо, чтобы данные первого и третьего полей остались неизменными, а данные второго поменялись на данные из TXT файла. Пробовал следующее:
var
f : textFile;
s : string;
a : string;
begin
AssignFile(f,"D:\aaa.txt");
Reset(f);
while not Eof(f) do
begin
ReadLn(f,s);
a := s;
Table1.InsertRecord([Null, a, Null]);
( f)Здравствуйте! Я пытаюсь програмным путем изменить данные одного из нескольких полей в таблице, т.е. необходимо, чтобы данные первого и третьего полей остались неизменными, а данные второго поменялись на данные из TXT файла. Пробовал следующее:
var
f : textFile;
s : string;
a : string;
begin
AssignFile(f,"D:\aaa.txt");
Reset(f);
while not Eof(f) do
begin
ReadLn(f,s);
a := s;
Table1.InsertRecord([Null, a, Null]);
end;
CloseFile(f);
end;
где думал, что Null игорирует знач. полей и перескакивает их. Но вылетает окно, что не может подставить значение первого поля :(. Есть ли какой-нибудь способ решить задачку? Спасибо!
← →
Соловьев (2003-07-28 13:52) [1]
> где думал, что Null игорирует знач.
нет не игнорирует.
var
f : textFile;
s : string;
begin
AssignFile(f,"D:\aaa.txt");
Reset(f);
while not Eof(f) do
begin
ReadLn(f,s);
a := s;
Table1.Edit;
Table1.Fileds[1].AsString = s;
Table1.Post;
( f)
> где думал, что Null игорирует знач.
нет не игнорирует.
var
f : textFile;
s : string;
begin
AssignFile(f,"D:\aaa.txt");
Reset(f);
while not Eof(f) do
begin
ReadLn(f,s);
a := s;
Table1.Edit;
Table1.Fileds[1].AsString = s;
Table1.Post;
end;
CloseFile(f);
end;
← →
Mike1 Kouzmine1 (2003-07-28 13:52) [2]Nil
← →
Mike1 Kouzmine1 (2003-07-28 13:53) [3]Прошу прощения - не увидел, что изменить.
← →
sniknik (2003-07-28 13:58) [4]а если так?
Table1.InsertRecord([Null, a]);
(не вводить конечные нилы, как в примере ...
Note that Nulls are entered for some of the values, but are not required for missing values at the end of the array argument.)
у Соловьев © (28.07.03 13:52)
Table1.Edit;
на
Table1.Append;
поменяй.
← →
Соловьев (2003-07-28 14:04) [5]
> sniknik © (28.07.03 13:58
нет, ты не прав. автор поста говорит как раз про обновление
> Я пытаюсь програмным путем изменить данные одного из нескольких
> полей в таблице
← →
Соловьев (2003-07-28 14:10) [6]
> Artemij © (28.07.03 13:47)
только как ты проверяешь соответсвие записей в БД и текстовом файле?
← →
sniknik (2003-07-28 14:15) [7]Соловьев © (28.07.03 14:04)
>> sniknik © (28.07.03 13:58
>нет, ты не прав. автор поста говорит как раз про обновление
тогда зачем делает
Table1. InsertRecord([Null, a, Null]);
?
по коду похоже на добавление таблицы из текстового файла.
← →
Соловьев (2003-07-28 14:22) [8]
> тогда зачем делает
> Table1.InsertRecord([Null, a, Null]);
А кто его знает? может не разобрался что делает этот метод(а судя по NULL, то хелп и не смотрит).
← →
Artemij (2003-07-28 14:25) [9]Я пытаюсь полностью обновить данные поля. Пробовал Table1.Edit и Table1.Assign. В первом случае меняется только первая запись, а во втором записи только добавляются, но не изменяются.
> Соловьев ©
> только как ты проверяешь соответсвие записей в БД и текстовом
> файле?
Кол-во записей одинаково и они все едут подряд.
← →
Artemij (2003-07-28 14:28) [10]
> Соловьев ©
> может не разобрался что делает этот метод(а судя по NULL,
> то хелп и не смотрит).
В Help то как раз посмотрел, но не разобрался, что этот метод делает.
← →
Mike1 Kouzmine1 (2003-07-28 14:30) [11]А ты переходи на нужную запись и ее редактируй, а как на нее перейти - вот вопрос. Если последовательно все идет и без индексов, то последовательно, а проще все удали и заново добавь.
← →
Соловьев (2003-07-28 14:32) [12]
> Кол-во записей одинаково и они все едут подряд.
лучше если бы было какое-то ключевое поле.
> Я пытаюсь полностью обновить данные поля. Пробовал Table1.Edit
> и Table1.Assign. В первом случае меняется только первая
> запись, а во втором записи только добавляются, но не изменяются.
нужно использовать Edit. надо после
Table.Post; Table1.Next; - забыл про это :)
← →
Artemij (2003-07-28 14:33) [13]> В первом случае меняется только первая запись
и то это последнее значение из TXT файла. Получается, что не происходит перескок на следующий Record в таблице.
← →
Artemij (2003-07-28 14:35) [14]
> Соловьев ©
ЗАРАБОТАЛО! СПАСИБО!
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.08.21;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c