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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.03.2014, 18:17   #1
new1
Пользователь
 
Регистрация: 22.03.2014
Сообщений: 11
По умолчанию IBExpert, InterBase в Делфи. Ошибка "TPB Constant() is unknown" при использовании хранимой процедуры

написала простую хранимую процедуру в скрипте IBExpert
Код:
create procedure XCount
returns (nX numeric) as
begin
select count (ID) from table1 into: nX;
exit;
end;
В делфи кидаю IBStoredProc1-настраиваю как надо(Database,Transaction,StoredPro cName)
и Transaction2 - params (read_commited rec_version nowait)
Далее пишу код
Код:
procedure TForm.Button1Click(...);
DataModule1.IBTransaction2.StartTransaction;
DataModule1.IBStoredProc1.ExcesProc;
Edit1.Text:=IntToStr(DataModule1.IBStoredProc1.ParamByName('nX').AsInteger);
DataModule1.IBTransaction2.Commit;
Запускаю приложение, нажимаю на кнопку и получаю ошибку "raised exeption class EIBClientError with message 'TPB Constant () is unknown'.
останавливается на строке DataModule1.IBStoredProc1.ExcesProc ;
Вот что делать?Вроде все по методичке делаю, уже раз 20 перепроверила и перепроделывала...Все равно 'Constant () is unknown'
что еще не сделала - то?
new1 вне форума Ответить с цитированием
Старый 27.03.2014, 18:57   #2
Dush
Форумчанин
 
Регистрация: 29.09.2011
Сообщений: 116
По умолчанию

Цитата:
останавливается на строке DataModule1.IBStoredProc1.ExcesProc ;
может попробовать
Код:
DataModule1.IBStoredProc1.ExecProc ;
или это просто опечатка?
Dush вне форума Ответить с цитированием
Старый 27.03.2014, 19:03   #3
new1
Пользователь
 
Регистрация: 22.03.2014
Сообщений: 11
По умолчанию

извиняюсь,это просто опечатка...
new1 вне форума Ответить с цитированием
Старый 27.03.2014, 19:07   #4
Dush
Форумчанин
 
Регистрация: 29.09.2011
Сообщений: 116
По умолчанию

можно попробовать (под рукой нет IDE) вставить
Код:
DataModule1.IBTransaction2.StopTransaction;
перед
Код:
DataModule1.IBTransaction2.StartTransaction;
может у тебя транзакция уже открыта и ты ее еще раз открываеш

или попробуй в параметрах транзакции проверить
params (read_committed rec_version nowait)

Последний раз редактировалось Dush; 27.03.2014 в 19:15.
Dush вне форума Ответить с цитированием
Старый 27.03.2014, 19:25   #5
new1
Пользователь
 
Регистрация: 22.03.2014
Сообщений: 11
По умолчанию

Параметры проверила! Транзакцию на эту процедуру отдельную добавляла..
new1 вне форума Ответить с цитированием
Старый 27.03.2014, 19:29   #6
Dush
Форумчанин
 
Регистрация: 29.09.2011
Сообщений: 116
По умолчанию

Цитата:
read_commited
это опечатка или так и есть?
просто в этой константе два t, а у вас одна
Код:
read_committed
попробуйте заменить все параметры транзакции на
Код:
read
read_committed
rec_version

Последний раз редактировалось Dush; 27.03.2014 в 19:35.
Dush вне форума Ответить с цитированием
Старый 27.03.2014, 19:56   #7
new1
Пользователь
 
Регистрация: 22.03.2014
Сообщений: 11
По умолчанию

стал ругаться!!!
with message "Dymanic SQL Error parameter mismatch procedure nX"
new1 вне форума Ответить с цитированием
Старый 27.03.2014, 19:58   #8
new1
Пользователь
 
Регистрация: 22.03.2014
Сообщений: 11
По умолчанию

Цитата:
Сообщение от Dush Посмотреть сообщение
это опечатка или так и есть?
просто в этой константе два t, а у вас одна QUOTE
Код:
read_committed
Удивляюсь вашей внимательности!В реальном коде стараюсь таких ляпов не делать!
new1 вне форума Ответить с цитированием
Старый 27.03.2014, 20:19   #9
new1
Пользователь
 
Регистрация: 22.03.2014
Сообщений: 11
По умолчанию

А хотя.....Помогло!!!Не выдает ошибку!!!Спасибо вам за ваше терпение, и внимание, и за помощь)))
Ошибку выдавало потому что немного изменила код.А сейчас все на место поставила, задала параметры как вы показали и все!работает!
new1 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка DPB Constant (user 'sysdba') is unknown artemavd БД в Delphi 3 04.06.2012 19:30
ошибка "Constant expression violates subrange bounds"(Delphi) skorik-1992 Помощь студентам 3 27.04.2012 09:12
при использовании idHTTP.Post() каждые 70 байт добавляются знаки "=" СТРАННИК Работа с сетью в Delphi 2 03.02.2012 11:44
дополнительные условия при использовании функции "просмотр" Обыватель Microsoft Office Excel 13 04.08.2011 16:49
Ошибка при использовании OlePropertyGet("Documents").OleProcedure("Add") в C++ Builder AleksP C++ Builder 7 11.04.2009 13:06