Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
2 / 2 / 1
Регистрация: 18.10.2007
Сообщений: 1,748

Необходимо отлавливать данные из хранимой процедуры, которые выводятся при помощи RaisError и Print

10.04.2011, 02:12. Показов 1431. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую.
Продолжаю тему про взаимодействие SQL Server с VB.
Необходимо отлавливать данные из хранимой процедуры, которые выводятся при помощи RaisError и Print. Для этого создаю коннекшн с директивой WithEvents и, наивный, жду, когда сработает событие InfoMessage.
Так вот... здесь два варианта...
1) Если подклчаться БЕЗ DSN, то событие не сработает никогда.
2) Если С DSN, то сработает только один раз.
Знаю, я не первый столкнулся с этой проблемой.
Порыл в нете - нашел предложение использовать SQLDMO. Но этот компонент, как оказалось, еще глючней коннекшена.
Очень надеюсь, что у кого-нибудь возникнут какие-нибудь предложения...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.04.2011, 02:12
Ответы с готовыми решениями:

Создание хранимой процедуры, выводящей данные
Всем добрый день! Необходимо создать хранимую процедурe, выводящую все палаты и число больных в палате. Есть запрос, который работает: ...

FastReport. Не отбражаются данные в отчете от хранимой процедуры
Здравствуйте, Делаю отчёт с помощью данной программы. На форме есть textbox-ы, данные которых отображаются в отчёте. Эти данные...

Не могу вывести данные с хранимой процедуры в форму
Ребята, не могу вывести данные с хранимой процедуры. вот код с формы ConnetionToSql.Open(); SqlCommand ClientCommand =...

6
2 / 2 / 1
Регистрация: 18.10.2007
Сообщений: 1,748
10.04.2011, 13:14  [ТС]
Конечно, молжно все эти сообщения складывать в отдельную таблицу и обновлять ее каждую секунду с каждого клиента... Но, на мой взгляд, это будет лишнее растрачивание ресурсов... Т.к. клиентов одновременно будет 100-150...
0
2 / 2 / 1
Регистрация: 19.07.2007
Сообщений: 737
10.04.2011, 14:17
некоторые ошибки сервера можно обнаружить после выполнения в коллекции Errors у коннекшена (cn.Errors.Count проверяй после каждого действия)
0
2 / 2 / 1
Регистрация: 18.10.2007
Сообщений: 1,748
10.04.2011, 14:35  [ТС]
Да, на эту тему я тоже думал.
Но, как оказалось, туда они тоже не попадают. На форуме SQL.RU народ затрагивал эту тему... так решения и не нашли...
0
2 / 2 / 1
Регистрация: 19.07.2007
Сообщений: 737
10.04.2011, 15:12
вроде бы есть какая-то процедурка на сервере, которая может переопределять класс ошибок, т.е. юзерские сделать выше приоритетом, чтобы они стали в Errors попадать.
0
2 / 2 / 1
Регистрация: 19.07.2007
Сообщений: 737
10.04.2011, 15:27
вот, что поведал BOL:
severity

Is the user-defined severity level associated with this message. Severity levels from 0 through 18 can be used by any user. Severity levels from 19 through 25 are used only by members of the sysadmin fixed server role. For severity levels from 19 through 25, the WITH LOG option is required.


Caution Severity levels from 20 through 25 are considered fatal. If a fatal severity level is encountered, the client connection is terminated after receiving the message, and the error is logged in the error log and the application log.

т.е. нужно делать RAISERROR(@ErrorText, 16, 1) c severiry >10 and <19 тогда попадут в ERRORS коннекшена
0
2 / 2 / 1
Регистрация: 18.10.2007
Сообщений: 1,748
10.04.2011, 18:07  [ТС]
пасиба, попробую вечерком
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.04.2011, 18:07
Помогаю со студенческими работами здесь

Как вывести данные с использованием хранимой процедуры
Здравствуйте. Вот разбираю хранимые процедуры и не могу понять в чем ошибка. Есть такая процедура: ALTER PROCEDURE dbo.PrintData ...

Вывести сведения в консоль при помощи Print
Доброго дня, помогите разобраться) Нужно вывести сведения о человеке в консоль при помощи Print Знаю только WriteLine...

Получить данные после выполнения хранимой процедуры в Perl.
Есть хранимая процедура (Сервер DB2) которая возвращает набор данных и есть такая необходимость получить результат этого запроса в Perl. ...

Проверка внутри хранимой процедуры, возвращает ли она данные
Имеется потребность определить выводятся ли данные внутри самой хранимой процедуры, это нужно для работоспособности нижеприведенного...

Функции и процедуры. При помощи процедуры записать слова задом наперед
Дана строка S, состоящая из не менее 5 слов. При помощи процедуры записать слова задом наперед. Порядок слов сохранить. ...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru