Я работаю над преобразованием BDE в ADO для своей компании. Я побежал в выражение, которое я не могу понять, как преобразовать ADOКонвертация BDE в ADO в DELPHI 2010
Вот выражение BDE со всеми изменениями ADO для одного .... той части, которая вызывает у меня вопросы, за исключением является
с Tquery.Create (nil) сделать в начале. Есть идеи?
with Tquery.Create(nil) do
begin
cmd := TStringList.Create;
cmd.Add('select top 3 csnttext from casenotesint');
cmd.Add('where csntcaseid = ''' + scasenum + ''' ');
cmd.Add('and csntclmid = ''' + sclmnumber + ssplitcode + ''' ');
cmd.Add('order by csntseqnum desc');
rs := fConnection.Execute(cmd.Text);
cmd.Free;
while not Eof do
begin
SAPrintReport1.Tab(0.5);
SAPrintReport1.Print(rs.Fields.Item('CsNtText').Value);
SAPrintReport1.NewLine;
rs.next;
end;
rs.Close;
end;
if cbxSpacer.checked then
begin
SAPrintReport1.NewLine;
SAPrintReport1.NewLine;
SAPrintReport1.NewLine;
end;
Правильно ли я считаю, что BDE, ADO и Delphi 2010 на самом деле не имеют никакого отношения к вашему вопросу? Вы действительно просто спрашиваете, что значит «с помощью Tquery.Create (nil)», правильно? –
Правильно ли этот код? Вы создаете TQuery и используете его свойство Eof (из-за с), но затем вы повторяете rs. Более того, я бы использовал параметры в предложении where, надеюсь, что вход проверен и подвергнут санитарной обработке, или «забавные» вещи могут произойти, если ваш пользователь достаточно квалифицирован (помимо того, что, вероятно, заставляет запрос жестко анализировать каждый раз). – 2010-06-30 21:14:38
Поскольку ваша проблема была в конце, а не с кодом, который вы опубликовали, вы должны изменить свой вопрос или удалить его, чтобы сделать StackOverflow более полезным местом с меньшим уровнем шума. –