Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.13;
Скачать: CL | DM;

Вниз

Как реализовать модификацию базы через запрос SQL?   Найти похожие ветки 

 
Ram   (2005-10-04 13:10) [0]

Есть определенная база (По моему dbase). Есть некий запрос, модифицирующий базу:

update t_klsd_242
set account_pers=:param1
where kls_id in
 ( select kls_id from t_kls_all
   where (klsref_num=242)
         and
         (par_id in (select kls_id from t_klsd_203 where cd_inn=:param2))
 )
где param - параметры-строки, которые берутся из текстового файла.
Запускал такой запрос в  SQLExplorer c подставленными значениями параметров - все путем. А вот в программе - пишу этот запрос в Query, и при попытке открыть этот Query выдает такую ошибку: "error creating cursor handle".
Может этот запрос нужно не в Query запускать, а типа в чем-то похожем на IBSQL ?


 
Digitman ©   (2005-10-04 13:16) [1]


> Есть определенная база (По моему dbase).


на кофейной гуще гадаем ?


 
Курдль ©   (2005-10-04 13:22) [2]


> пишу этот запрос в Query, и при попытке открыть этот Query


Его не открывать надо, а исполнять. Причем, сначала прописав параметр.


 
Ram   (2005-10-04 13:24) [3]

В БДЕ Администраторе про эту базу значится :

type=Adaptive Server Anywhere 6.0
LangDriver=dBASE RUS cp866


 
Ram   (2005-10-04 13:31) [4]


> Его не открывать надо, а исполнять. Причем, сначала прописав
> параметр.

Про параметры понятно, делаю так

 Repeat
     Readln(f1, str1);
     inn:=Copy(str1,12,12);
     schet:=Copy(str1,30,23);
     Query1.Close;
     query1.Params[0].AsString:=schet;
     query1.Params[1].AsString:=inn;
     Query1.Open;
   Until Eof;

вероятно нужно вместо Query1.Open сделать Query1.ExecSQL или что-то другое?


 
Курдль ©   (2005-10-04 13:35) [5]


> вероятно нужно вместо Query1.Open сделать Query1.ExecSQL
> или что-то другое?


Совершенно верно!
Причем, если Query "привязан" к компонентам отображения (хотя это нонсенс), желательно сделать .DisableControls;


 
ANB ©   (2005-10-04 13:35) [6]


> вероятно нужно вместо Query1.Open сделать Query1.ExecSQL
> или что-то другое?
> <Цитата>
- вероятно. Тебе ошибка и вернулась, в которой все разжевано.


 
Ram   (2005-10-04 13:40) [7]

Спасибо.



Страницы: 1 вся ветка

Текущий архив: 2005.11.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.032 c
2-1129575723
ctokas
2005-10-17 23:02
2005.11.13
90 DEC в 90HEX


14-1129668273
Prohodil Mimo
2005-10-19 00:44
2005.11.13
Каковы преимущества тестирования с NUnit?


9-1119604921
Dennis
2005-06-24 13:22
2005.11.13
Синтез трехмерных моделей по фотографиям


14-1129813837
Sandman29
2005-10-20 17:10
2005.11.13
Опрос - цвет фона и размер шрифта


2-1129911328
Volf_555
2005-10-21 20:15
2005.11.13
Выделение подстроки из строки