database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 1897 게시물 읽기
No. 1897
사용자 정의 함수내에서 GetDate()사용하기
작성자
안수미(smahn01)
작성일
2005-04-20 23:16ⓒ
2005-04-20 23:18ⓜ
조회수
4,237

어찌보면 바보같은 질문입니다만.. ㅠㅠ

아래와 같이 함수를 작성해서 실행하면,

CREATE FUNCTION f_test ()
returns int
as
begin
declare @RetCode int;
select @RetCode = cast(year(getdate()) as int)
return @RetCode
end
아래와 같은 에러가 뜹니다.

>>

서버: 메시지 443, 수준 16, 상태 1, 프로시저 f_test, 줄 6
함수에서 'getdate' 사용이 잘못되었습니다.


그런데, 같은 내용으로 procedure를 작성해서 실행하면

CREATE PROCEDURE f_test
as
begin
declare @RetCode int;
select @RetCode = cast(year(getdate()) as int)
return @RetCode
end

이경우는 정상적으로 동작이 됩니다.

>>

명령이 성공적으로 완료되었습니다.

 

물론 결과값도 정상적으로 리턴이 되고요..

왜 그럴까요? 사용자 정의 함수내에서는 GetDate()를 사용할수없는 건가요? 설마.. ^^;;

뭐가 틀렸는지 알려주세요.

이 글에 대한 댓글이 총 1건 있습니다.

getdate는 비확정적이기 때문에 함수내 사용이 불가능합니다.

현재 시간을 함수의 인자로 사용하여 함수를 호출하는 방법을 이용하셔야 할껍니다.

백승현님이 2005-04-21 10:10에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1901칼럼 수가 550개 이상이나.. [2]
길가는 나그네..
2005-04-21
2459
1899이런 경우 쿼리를 어케 만들어야 할지요.. 급합니다.. [3]
dde
2005-04-21
2138
1898이 에러는 무엇인가요 The DBMS returned an unspecified error. [1]
jay
2005-04-21
3132
1897사용자 정의 함수내에서 GetDate()사용하기 [1]
안수미
2005-04-20
4237
1896저장프로시저 문제입니다. [1]
차창진
2005-04-20
3858
1895varchar형 필드의 기본값으로 공백문자를 사용할 수 있나요? [1]
서기
2005-04-20
5108
1894SQL2000 퍼스널버전 설치시 단일모드 접속밖에 안되나요?
넘궁금이
2005-04-20
1694
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다