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

Вниз

Вопрос по MS SQL для профессионалов!   Найти похожие ветки 

 
Мазут Береговой   (2002-11-13 00:35) [0]

Хлопцi!
Такая проблема.
Написал программу, которая работает с базой данных используя stored procedures. Причем, на рабочем десктопе она работает исключительно. На рабочем десктопе(windows2000 pro) имеется своя база. Когда создаю соединение к серверу(windows2000 server), то перестает работать одна из stored procedure, которая получает два параметра и пишет в одно из полей кое-какие данные. Вот Код

ADOSP := TADOStoredProc.Create(Self);
ADOSP.ConnectionString:=EConnectionString.Text;
ADOSP.ProcedureName := "P_##_Create_Login";
ADOSP.Parameters.Refresh;
try
ADOSP.Close;
ADOSP.Parameters[1].Value := Account;
ADOSP.Parameters[2].Value := Pref;
ADOSP.ExecProc;
finally
ADOSP.Destroy;
end;


Как только дохожу до строчки ADOSP.Parameters[1].Value := Account;, то получаю ошибку List index out of bounds(1)
Получается, что нехватает каких-то прав для логина, раз она не может вернуть кол-во параметров. Тогда вопрос: какими особенными своийствами должен обладать логин (и каких их создать) для удаленного компьютера, чтобы иметь правильный доступ в базу.
Думаю, что это вопрос к администраторам.
Спасибо.


 
kaif ©   (2002-11-13 03:34) [1]

А нельзя просто убрать
ADOSP.Parameters.Refresh;
?
Я не знаток ADO, Но обычные TStoredProc погут хранить 2 параметра persistent. Создай 2 параметра persistent и присваивай им значения. Или просто добавь их в список параметров runtime (есть же такие методы), если нужно обязательно создавать компонент runtime. Мне кажется, что если тип и кол-во параметров заранее известно и постоянно, то можно хотя бы попытаться пойти этим путем.


 
Юрий   (2002-11-13 04:02) [2]

Вообще-то ADOSP.Parameters.Refresh убрать нельзя. Сначала я пробовал без этой строчки и тогда программа не знала ничего про параметры. А как только поставил - все заработало.

Я УЖЕ НАШЕЛ В ЧЕМ ПРИЧИНА - Я ПРОСТО ЗАБЫЛ ДОБАВИТЬ ЭТУ STORED PROCEDURE В БАЗУ СЕРВЕРА. ИХ ОКОЛО 20 ШТУК ТАМ. СРАЗУ И НЕ ЗАМЕТИЛ. ТАК ЧТО, ИЗВИНИТЕ ЗА БЕСПОКОЙСТВО.

СПАСИБО БОЛЬШОЕ ВСЕМ.



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
1-93041
Andre V.
2002-11-19 11:45
2002.11.28
Алгоритм шифрования


1-93059
mazepa
2002-11-16 09:09
2002.11.28
stringgrid


6-93177
Vasechkin
2002-10-01 21:43
2002.11.28
В ФАКе Нашел вот это, а у муня ругается, где я подписал. Кто-нить


1-93002
kazulja
2002-11-18 05:42
2002.11.28
Speech 5.1


3-92886
Miss
2002-11-11 07:37
2002.11.28
Поиск