
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
14.11.2002, 16:12:10
|
|||
|---|---|---|---|
|
|||
Форматирование выходного параметра процедуры |
|||
|
#18+
Есть процедура: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Вызываю так: Код: plaintext 1. 2. 3. 4. Результат: Код: plaintext Вопрос: что сделать, чтобы вместо всех % стояли нормальные значения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2002, 16:23:36
|
|||
|---|---|---|---|
|
|||
Форматирование выходного параметра процедуры |
|||
|
#18+
Хотя-бы так поправьте SELECT @SQL = 'select 1 where 1='+CONVERT(varchar(10), @Id) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2002, 16:36:29
|
|||
|---|---|---|---|
|
|||
Форматирование выходного параметра процедуры |
|||
|
#18+
Согласен, ошибся, но сути это не меняет... Может все-таки есть стандартная переменная, которая хранит текст текущей ошибки также, как @@ERROR хранит ее код? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2002, 16:42:24
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
В Вашей процедуре, динамический запрос совершенно излишен, можно написать просто Код: plaintext 1. а по поводу форматирования описания ошибки почитайте о функции FORMATMESSAGE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2002, 16:55:19
|
|||
|---|---|---|---|
|
|||
Форматирование выходного параметра процедуры |
|||
|
#18+
Пример оператора: Код: plaintext я привел просто для как частный смысл. На самом деле, вместо него будет любое SQL выражение, т.е. процедура универсальная . Насчет FORMATMESSAGE . Почитал, но по видимому использовать не получится, т.к. параметры, которые необходимо ей передать заранее неизвестны, в каждом отдельном случае из количество и значения могут быть разными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2002, 17:19:00
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
Вообще то SQL сам выводит сообщения об ошибках, поэтому Вам необходимости делать это нет. FORMATMESSAGE необходима для формирования строк собственных ошибок. Чем вас не устраивает вывод SQL Server'а? P.S. О универсальных процедурах. На мой взгляд, универсальные процедуры ведут к универсальным проблеммам, и у динамических запросов, на мой взгляд очень много минусов и мало плюсов, и использовать их надо осторожно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2002, 02:18:16
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
гых... на счет универсальности я согласен.... на счет exec не согласен категорически..... у меня например без него никак.... пришлось бы выносить логику на клиента или писать трехзвенку..... запры через exec тоже кэшируются..... если нужно с параметрами sp_executesql.... да в другой базе/сервере можно запустит динамик через ту же sp_executesql... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.11.2002, 12:22:54
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
Кстати это очень интересный вопрос как отформатировать сообщение об ошибке номер XXX. Есть такая функция dt_displayoaerror может это может помочь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.11.2002, 12:36:14
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
А что за функция то dt_displayoaerror, не могу найти описания... может плохо ищу... на msdn описания нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.11.2002, 12:38:55
|
|||
|---|---|---|---|
|
|||
Форматирование выходного параметра процедуры |
|||
|
#18+
2 Creator: Простите, а что это за функция (dt_displayoaerror) и где она живет? Ни в MSDN, ни в BOL я ее не нашел. Может быть просветите? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.11.2002, 19:34:00
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
В том то и дело что в MSDN её нету. Но она есть в базе master. Хоть я сильно сомневаюсь что это то что надо для получения уже готового сообщения об ошибке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.11.2002, 10:23:49
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
В случае возникновения ошибки, она и без того появится в отформатированом виде. Нет необходимости её выводить дополнительно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.11.2002, 10:31:45
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
2Creator А какой у Вас сервер? Я на MSSQL 2000 не в функциях не в процедурах не нашел, да и префикс dt не встречал... Если можно, приведите текст этой функции, интересно ведь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2002, 19:49:28
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
SQL Server 2000 SP2 CREATE PROCEDURE dbo.dt_displayoaerror @iObject int, @iresult int as set nocount on declare @vchOutput varchar(255) declare @hr int declare @vchSource varchar(255) declare @vchDescription varchar(255) exec @hr = sp_OAGetErrorInfo @iObject, @vchSource OUT, @vchDescription OUT select @vchOutput = @vchSource + ': ' + @vchDescription raiserror (@vchOutput,16,-1) return GO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2002, 20:03:51
|
|||
|---|---|---|---|
Форматирование выходного параметра процедуры |
|||
|
#18+
Насколько, я понял это обертка sp_OAGetErrorInfo, а вот что о ней написано... Obtains OLE Automation error information, так что это по моему немного не то что нужно, или я ошибаюсь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/search_topic.php?author=Slavko+St&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
get settings: |
4ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 651ms |
| total: | 769ms |

| 0 / 0 |
