С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
0 / 0 / 0
Регистрация: 15.02.2009
Сообщений: 63

Вызов хранимой процедуры SQL2005 Express

03.07.2011, 20:03. Показов 2877. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть хранимая процедура (pPolsq) на SQL 2005 Express с одним, в процедуре же и инициализируемом, параметром (Inicials):
T-SQL
1
2
3
4
5
USE [tatApril11]
Declare @Inicials nvarchar(35)
Set @Inicials='ИВАНОВ В И'
SELECT Distinct mibAPACFAM, mibAPAC.Mes Where mibAPACFAM=@Inicials;
return
В SQL Server Management Studio Express процедура выполняется без проблем, когда же я пытаюсь в Builder6 из компонента ADOQuery вызвать её сформировав строку запроса вот так:
T-SQL
1
select * from pPolsq()
то выходит ошибка: "Недопустимое имя объекта "pPolsq"". Никакие переименования процедуры не помогают. А вот если вместо имени процедуры поставить имя любой таблицы той же SQL-базы, то всё выполняеься прекрасно. Мне кажется, что всё дело в синтаксисе вызова процедуры, но найти правильный не могу. Подскажите, пожалуйста, кто знает.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.07.2011, 20:03
Ответы с готовыми решениями:

Вызов хранимой процедуры
есть хранимая процедура. Надо ее вызвать и что бы она заменила один столбец в БД. если что проект делаю в WPF

Вызов хранимой процедуры
Народ. У меня возникла проблема, может кто порекомендует что-нибудь. Мне надо вызывать одну и туже хранимую процедуру для...

Вызов хранимой процедуры
Здравствуйте уважаемые форумчане. Уткнулся лбом и не знаю что дальше делать. Прошу Вашего совета. Ситуация такая: Есть храним. процедура...

3
 Аватар для Jafa
51 / 51 / 13
Регистрация: 05.06.2008
Сообщений: 139
04.07.2011, 13:35
скорее всего проблема в драйвере подключения к базе. как то тоже возился с скриптом, который в самой сурбд нормально выполнялся, а через драйвер выдавал ошибку. Проблема решилась изучением Ридмихи к драйверу. как вариант поменять драйвер подключения. А через ADOCommand пробовали выполнять?
1
0 / 0 / 0
Регистрация: 15.02.2009
Сообщений: 63
04.07.2011, 17:22  [ТС]
Jafa, спасибо. Вопрос мне удалось решить, мне очень сильно помогли ещё на одном форуме. Вначале на SQL-сервере я создаю процедуру (pLocTabl) вот такого содержания:
T-SQL
1
2
3
4
5
6
7
USE [tatApril11]
       Declare @Inicials nvarchar(35)
       Set @Inicials='ИВАНОВ В И'
       SELECT Distinct mibAPAC.FAM, mibAPAC.Mes
       INTO #LocTable  
       Where mibAPAC.FAM=@Inicials;
      return
(т. е. использую временную таблицу LocTable)
А потом вот таким образом вызываю её в Builder:
C++
1
2
3
ADOQuery1->Close();
       ADOQuery1->SQL->Text = "exec pLocTabl";
       ADOQuery1->Open();
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
05.07.2011, 11:11
Ваш способ не самый оптимальный. Правильно было бы использование компонента TADOCommand с CommandType=cmdStoredProc, которая в Вашем случае возвратит результсет. И никаких лишних таблиц, забирающих ресурсы сервера.
Не знаю как в 2005, но в 2000-м вызов хранимок в формате Select from был недопустим и для этих целей писались серверные функции
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.07.2011, 11:11
Помогаю со студенческими работами здесь

Вызов хранимой процедуры
Ка мне можно вызвать хранимую процедуру из SQL скрипта ? SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON GO CREATE VIEW...

Вызов хранимой процедуры
Хочу обновить бд с помощью хранимой процедуры ALTER procedure . @id_TP int, @id_worker int, @DT datetime, @id_Texbook int, @col_vo int...

Вызов хранимой процедуры
Добрый день У меня есть процедура хранимая в MySQL на добавление строки CREATE DEFINER = `root`@`%` PROCEDURE `NewProc`(IN `fam`...

Вызов хранимой процедуры
Здравствуйте, помогите пожалуйста. Мне нужно сделать, чтобы на форму в ЛистБокс выводилась информация, которую выбирает с сервера...

Вызов хранимой процедуры
Как вызвать хранимую процедуру в БД Access через Viasual Studio 2015 Community. Хранимые процедуры: Доабвление, удаление из БД, Выборка и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru