Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Необязательный параметр хранимой процедуры [D6, IB6.x]


Виталя ©   (2003-10-31 10:35:00) 

Можно ли сделать для хранимой процедуры какой-то параметр "необязательным", чтобы он по умолчанию передавался как NULL, если да то как ?


Виталя   (2003-11-01 17:42:00) [1]

> Alexandr © (01.11.03 13:09) [10]
Ну в итоге я естественно так и сделала ...(еще вчера)


Alexandr   (2003-11-01 13:09:00) [2]

надо не изменять количество параметров в процедуре, а создавать еще одну процедуру - копию и над ней уже изголяться.
И постепенно все приложения перейдут на новую процедуру - тогда старую стереть.
Иначе гемор


Sandman25   (2003-10-31 13:08:00) [3]

[8] Виталя © (31.10.03 13:00)

Нет, не с IB.
Если бы работал с ним, ответил бы на самый первый пост.


Виталя   (2003-10-31 13:00:00) [4]

> Sandman25 © (31.10.03 12:09) [6]
> У нас такое иногда используется - в новой версии хранимой
> процедуры добавляется параметр. У тех клиентов, которым
> ставим только хранимую (без апгрейда экзешника), все продолжает
> работать как ни в чем не бывало.

Так значит это все же возможно или вы работаете не с [D6, IB6.x]?
(мне именно для таких целей и надо)


handra   (2003-10-31 12:52:00) [5]

[5] Zacho © (31.10.03 12:06)
> handra © (31.10.03 12:00) [4]
И какое отношение это имеет к IB6.x ?

сорьки перепутал


Sandman25   (2003-10-31 12:09:00) [6]

>а нафига?

У нас такое иногда используется - в новой версии хранимой процедуры добавляется параметр. У тех клиентов, которым ставим только хранимую (без апгрейда экзешника), все продолжает работать как ни в чем не бывало.
Но в последнее время мы от этого отказались.


Zacho   (2003-10-31 12:06:00) [7]


> handra © (31.10.03 12:00) [4]

И какое отношение это имеет к IB6.x ?


handra   (2003-10-31 12:00:00) [8]

Выдержка из BOL:

C. Use a simple procedure with wildcard parameters
This stored procedure returns only the specified authors (first and last names supplied), their titles, and their publishers from a four-table join. This stored procedure pattern matches the parameters passed or, if not supplied, uses the preset defaults.

USE pubs
IF EXISTS (SELECT name FROM sysobjects
WHERE name = "au_info2" AND type = "P")
DROP PROCEDURE au_info2
GO
USE pubs
GO
CREATE PROCEDURE au_info2
@lastname varchar(30) = "D%",
@firstname varchar(18) = "%"
AS
SELECT au_lname, au_fname, title, pub_name
FROM authors a INNER JOIN titleauthor ta
ON a.au_id = ta.au_id INNER JOIN titles t
ON t.title_id = ta.title_id INNER JOIN publishers p
ON t.pub_id = p.pub_id
WHERE au_fname LIKE @firstname
AND au_lname LIKE @lastname
GO


Alexandr   (2003-10-31 11:01:00) [9]

а нафига?


Виталя   (2003-10-31 10:46:00) [10]

Да я это имела в виду, жаль.


Zacho   (2003-10-31 10:37:00) [11]

Если ты имеешь в виду: сделать так, чтобы при вызове ХП какой-либо параметр можно было не указывать, то - нельзя.


Наверх

Титульная страница Поиск, карта сайта Написать письмо