Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.07.2011, 12:20   #1
nhr
Пользователь
 
Регистрация: 11.12.2010
Сообщений: 25
По умолчанию inifile и БД часть 2

Ну значит код сделан, но выдает ошибку invalid sql property

Код:
procedure TForm1.Button3Click(Sender: TObject);
var i,j:integer;
s,s1,AConnectionString,AQuery:string;

begin
ADOQuery1.Active := False;
  ADOConnection1.Connected := False;
  try
ADOConnection1.ConnectionString:=AConnectionString;
AdoCOnnection1.Connected:=True;
ADOQuery1.SQL.Clear;
//ADOQuery1.Close;
ADOQuery1.SQL.Add(AQuery);
ADOQuery1.Open;
StringGrid1.Cells[1,1]:=ADOQuery1.Fields[0].AsString;
finally
if ADOquery1.Active Then ADOquery1.Close;
ADOConnection1.Connected:=False;
  end;
  end;

procedure TForm1.Button4Click(Sender: TObject);
var
Ini:TIniFile;
Dbs: TStringList;
s,s1:string;

begin
Ini:=TIniFile.Create(changefileext(paramstr(0),'.ini'));
Dbs:=TStringList.Create;
s:=INi.ReadString('databases1','connstring','') ;
s1:=Ini.ReadString('databases1','query','');
with StringGrid1 do
Cells[1,1]:=adoquery1.Fields[0].AsString;

s:= Ini.ReadString('databases2','ConnString','');
s1:= Ini.ReadString('databases2','Query','');
with StringGrid1 do
Cells[2,1]:=adoquery1.Fields[0].AsString;

Ini.Free;
end;

iniFile:
[databases1]
ConnString=DATA
Query=select count(template_id) as f1 from os_eqm.devices where template_id <>0

[databases2]
ConnString=DEVELOP
Query=select count(def_monitoring_type)from devices_active where nvl(def_monitoring_type,0) <> 0

предполагаю, что в sql не правильно записан вызов:
select
(select count(template_id) from os_eqm.devices where template_id <>0)+
(select count(def_monitoring_type)from devices_active where nvl(def_monitoring_type,0) <> 0)
from dual
nhr вне форума Ответить с цитированием
Старый 14.07.2011, 08:55   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

две этих строки
Код:
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(AQuery);
можно заменить на одну такую
Код:
ADOQuery1.SQL.Text:=Aquery;
А чему здесь равно значение локальной переменной Aquery ?
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
inifile и БД nhr БД в Delphi 0 06.07.2011 20:58
часть С VaMpIR1111 Помощь студентам 2 13.04.2011 16:32
stream inifile dmitriegorovih Общие вопросы Delphi 9 27.07.2010 23:14
Сохранение в iniFile-ах Altera Общие вопросы Delphi 6 31.08.2009 11:08
Часть фона одним цветом а другая часть другим (без таблиц). Lanselot HTML и CSS 4 25.04.2008 18:41