Форум: "Базы";
Текущий архив: 2003.10.23;
Скачать: [xml.tar.bz2];
Внизчто-то не могу обратится к полю...беда...что-то не так? Найти похожие ветки
← →
Nikolai (2003-10-03 10:52) [0]Внизу не хитрый код. На MS SQL 7 есть процедура, которая возвращает в Delphi6 курсор с одной записью. Если подключить визуальный компонент - все видно, все хорошо. А вот без него обратиться к полю "myfield" не выходит. Компилятор предупреждает, что значение переменной, после попытки присвоить ей значение поля "myfield", не доступно, хотя явных ошибок он не находит. Что-то не так написал? Прошу помощи.
cSQL := "execute myproc";
qSel := TQuery.Create(nil);
try
with qSel do begin
DatabaseName := "DB";
Close;
SQL.Clear;
SQL.Add(cSQL);
Open;
iM := FieldByName("myfield").asInteger;
Close;
Free;
end;
except
on E: Exception do begin
ShowMessage(E.Message);
qSel.Free;
end;
end;
← →
Johnmen (2003-10-03 11:05) [1]1. Компилятор выкидывает переменную iM как неиспользуемую.
2. Возможно, правильнее писать SELECT * FROM myproc
← →
MsGuns (2003-10-03 11:35) [2]А зачем Close для только что созданного и, след-но, не открытого TQuery ? Хотя на ошибку это не влияет, конечно ;)
← →
Rem (2003-10-03 11:51) [3]1. Какая область видимости переменной iM?
2. Для чего она потом используется?
← →
Nikolai (2003-10-03 14:57) [4]iM - локальная, висит на кнопке, это максимальное значение поля
← →
ЮЮ (2003-10-04 04:21) [5]>iM - локальная, висит на кнопке
Это как? Вот и повесь:
iM := FieldByName("myfield").asInteger;
Button.tag := iM;
Button.Caption := IntToStr( iM);
Иначе см.[1]:
← →
Bhagavad (2003-10-04 18:44) [6]execute - ничего не возвращает.
select myfield from <имя процедуры>(<параметры>)
← →
sniknik (2003-10-04 19:02) [7]Johnmen © (03.10.03 11:05) [1]
> 2. Возможно, правильнее писать SELECT * FROM myproc
Bhagavad (04.10.03 18:44) [6]
> execute - ничего не возвращает.
> select myfield from <имя процедуры>(<параметры>)
да не все правильно для MSSQL все возвращает (если внутри процедуры конечно есь select) можно даже exec опустить все правильно будет, это вы начерное с IB путаете, там к процедуре без параметров как в View можно обращатся через селект в MSSQL такое обращение наоборот даст ошибку.
Nikolai © (03.10.03 10:52)
см. Johnmen © (03.10.03 11:05) [1] пункт 1.
& ЮЮ © (04.10.03 04:21) [5]
скорее всего дело именно в оптимизаторе.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.10.23;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.019 c