powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / MSSQL 70: Передача параметра в хранимую процедуру
4 сообщений из 4, страница 1 из 1
MSSQL 70: Передача параметра в хранимую процедуру
    #32016741
MishGan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос простой: имеем MSSQL 70 и хранимую процедурку proc1

create procedure proc1 (@d datetime) as
begin
select @d as [d1]
end;

И хочу ее вызвать так (и никак иначе):
exec proc1 convert(datetime,'11.12.2001',104)

А эта гадина мне:
Server: Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'convert'.

Не понимаю чего я тут такого написал? Ну понятно, конечно можно объявить еще одну переменную типа datetime и в нее конвертнуть все перед вызовом proc1.

НО в Oracle подобный код катит без проблем:
create or replace procedure proc1 (d date) is
begin
null;
end;
/
exec proc1(to_date('11.12.2001','DD.MM.YYYY'));

У кого какие мысли?
...
Рейтинг: 0 / 0
MSSQL 70: Передача параметра в хранимую процедуру
    #32016750
Osya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
EXEC proc1 '20011211'
...
Рейтинг: 0 / 0
MSSQL 70: Передача параметра в хранимую процедуру
    #32016751
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наверное и в Оракле тоже можно чего-то найти, что в нем не работает, а в MS SQL - пожалуйста

надо с этим смириться
...
Рейтинг: 0 / 0
MSSQL 70: Передача параметра в хранимую процедуру
    #32016790
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вельзя в качестве параметров передавать вычисляемые выражения. Либо переменные, либо константы. В твоем случае можно выкрутиться так:
declare @ddd datetime
set @ddd=convert(datetime,'11.12.2001',104)
exec proc1 @ddd
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / MSSQL 70: Передача параметра в хранимую процедуру
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]