
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
05.11.2003, 08:06
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
Как передать в х/процедуру параметра, который может иметь значение NULL? Допустим нужно найти клиента по фамилии, имени, отчеству Имя и отчество может отсутствовать Делать 3 ХП не хочется В ХП использую конструкции IF...ELSE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 08:52
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 09:15
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
Спасибо, почитал, только у меня чуть другая проблема Есть форма, где пользователь формирует критерии поиска 1. Фирма AKA p1 2. Фамилия рук. p2 3. Имя рук p3 4. отчество рук p4 Всго четыре параметра Далее Forms!MyForma.RecordSource="EXEC MySP " & p1 & "," & p2 & "," & p3 "," & p4 Хранимка сама разберется, что делать с NULL параметрами Ошибка вылетает в модуле, если хотя бы один из параметров не заполнен "Недопустимая инструкция SQL. Проверьте фильтр для сервера..." Когда все заполнено, все ОК Когда ручками запускаешь ХП, любые комбинации работают Жаль будет, если этого нельзя сделать ХП на 2 листах, день ваял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 09:26
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
А ты погляди что у тебя в итоге выходит. Сделай Debug.Print Forms!MyForma.RecordSource и увидишь что-нить типа EXEC MySP 1, 2 , , 4 Sql - это не VB, параметры пропускать нельзя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 09:37
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
Так что вызывать надо примерно так: Forms!MyForma.RecordSource="EXEC MySP " & Nz(p1,"Null") & "," и т.д. Кстати, сильно подозреваю, что фамилия, имя и отчество - строки. Тогда кавычек сильно не хватает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 09:45
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
Видимо так оно и есть "Видимо" потому, что DEBUg стоит после вызова ХП, а программа валится на вызове В случае, если все параметры есть Debug все нормально выдает Т.е. как итог В ХП не возможно передать параметр со значением NULL, даже если в самой ХП обработка NULL параметров предусмотрена????? Т.е. всю логику надо переносить в VB, написать несколько ХП под различные комбинации параметров??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 09:47
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
Не Nz(p1,"Null") делать, а Nz(p1,"DEFAULT") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 09:47
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
|Так что вызывать надо примерно так: |Forms!MyForma.RecordSource="EXEC MySP " & Nz(p1,"Null") & "," и т.д. Сейчас попробую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 09:49
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
DEFAULT Извиняюсь, это что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 10:04
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
>DEFAULT Извиняюсь, это что? mk:@MSITStore:C:\Program%20Files\Microsoft%20SQL%20Server\80\Tools\Books\tsqlref.chm::/ts_ea-ez_05ro.htm Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2003, 12:18
|
|||
|---|---|---|---|
|
|||
Передача в ХП параметра NULL |
|||
|
#18+
у меня null передается через входные апраметры а в самой ХП делаю так (поиск по null или по любоиу символу) where ... (ISNULL(dbo.[Возврат товара].[Серийный номер], N'') LIKE N'%' + ISNULL(@SerNomer, N'') + N'%')... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=45&mobile=1&tid=1678439]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
82ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 413ms |

| 0 / 0 |
