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 2077 게시물 읽기
No. 2077
oracle sysdate ==> mssql getdate()
작성자
최송(choi2song)
작성일
2005-07-05 15:39
조회수
8,042

파워빌더에서 오라클 sysdate 을 바로 불러 쓸수 있지만

ms sql 에서는 안됨.

편법

sysdate 가져오기 : 프로시저를 먼저 만듬 - 함수 사용안됨

CREATE PROCEDURE dbo.pr_sysdate
as
declare @aa varchar(10) , @bb varchar(19)
begin
select @bb =convert(varchar , getdate() , 120)
set @aa = substring(@bb,1,4)+substring(@bb,6,2)+substring(@bb,9,2)+substring(@bb,12,2)+substring(@bb,15,2)+substring(@bb,18,2)
--yyyy-mm-dd hh:mi:ss 120
return @aa
end

파워빌더 내에서 transaction의 외부 함수로 정의 리턴값 long 을 string 로 바꿈.

DateTime ls_sysdate
String ls_date

ls_date = sqlca.pr_sysdate()
ls_sysdate = datetime(date(Mid(ls_date,1,4)+'/'+Mid(ls_date,5,2)+'/'+Mid(ls_date,7,2)) ,time(Mid(ls_date,9,2)+':'+Mid(ls_date,11,2)+':'+Mid(ls_date,13,2)))
return ls_sysdate

 

 

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

파워빌더에서는 오라클의 sysdate나 SQL Server의 getdate()나

둘다 datetime 형으로 받을 수 있습니다.

다만 차이가 나는 건 오라클은 dual 테이블이 있어서 그걸 이용해 바로 이용할 수 있고 SQL Server는 from절 없이 그냥 쓰면 되는데 그걸

파워빌더에서 인식하지 못해서 문제가 생기는 것입니다..

한가지 팁을 알려드리면..

 

CREATE VIEW dual 
/*------------------------------------------------------  
* 목적 : Oracle의 dual table처럼 임의의 값(1 Row)을  
*           가져오기 위한 View(절대로 Row를 추가해선 안됨) 
* 용도 : PowerBuilder Script에서 FROM절이 없는 SQL문을 
*          지원하지 않는 문제점을 보완하기 위한 용도 
* 용례 : SELECT getdate()  
*           FROM dual 
-------------------------------------------------------*/ 
as 
select 'x' dummy_col 

 

이렇게 뷰를 만드신 후

스크립트에서

datetime ldt_sysdate

 

select getdate()

into :ldt_sysdate

from dual

 

이런 식으로 쓰시면 됩니다.

m님이 2005-07-05 16:52에 작성한 댓글입니다.
이 댓글은 2005-07-05 17:00에 마지막으로 수정되었습니다. Edit

power builder에서 Select의 구문으로 인해

getDate를 써야 한다면

조금 무식한 방법으로 이런건 안될런지요?

 

select top 1 getDate() from sysobjects

 

여리님이 2005-07-06 14:44에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
2080초보질문드립니다 [2]
정두호
2005-07-06
2331
2079DateTime형이 load data infile ~ replace 시에 ZERO value로 기록이되서.. [1]
이진
2005-07-06
2611
2078빠른 like 검색 문의 [2]
김민재
2005-07-05
8579
2077oracle sysdate ==> mssql getdate() [2]
최송
2005-07-05
8042
2076선택된 시간 내의 데이터가 없어도 결과를 보여주는 방법...? [5]
김상윤
2005-07-05
3651
2075[초보]mssql 에 있는 데이터를 mysql 로 옮기고 싶은데요.. [1]
우상철
2005-07-04
2689
2074MSSQL 서버 3대를 2:1 로 자료를 일정 시간에 옮겨 오려고 합니다. [3]
보리
2005-07-04
3460
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.023초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다