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 4219 게시물 읽기
No. 4219
오라클 insert mssql2000 insert 문으로 교체~~질문
작성자
너는매운면(inhosu)
작성일
2008-05-22 15:43
조회수
4,977

 INSERT INTO UC_COM_MENU(MENUID)

 (isnull((SELECT (CASE WHEN SUBSTRING(MENUID,3,2)='00' AND '0100' IS NULL THEN dbo.LPAD(SUBSTRING(MENUID,1,2)+1,2,'0')+'00'

 WHEN SUBSTRING(MENUID,5,2)='00' AND SUBSTRING('0100',3,1)='0000' THEN dbo.LPAD(SUBSTRING(MENUID,1,4)+1,4,'0')+'00'

ELSE dbo.LPAD(MENUID+1,4,'0') END) MENUID

 FROM (SELECT MAX(MENUID) MENUID

FROM UC_COM_MENU WHERE MENUID LIKE (CASE WHEN '0100' IS NULL THEN '%'+'00'

ELSE SUBSTRING('0100',1,2)+SUBSTRING('',3,2)+'%' END))),'0100'))


 이게 전체 쿼리문인데 


문제는 


insert(a) values(a) 이거인데


여기서 isnull ,select을 추가하는겁니다.


insert(a) values isnull(select * from a); 


위에 insert 문은 실행시키면 스칼라 머시기 에러하면서 실행이 안되고...그레서 values 를 제외하고 실행하면


insert(a) isnull(select * from a); 


서버: 메시지 170, 수준 15, 상태 1, 줄 3

줄 3: 'isnull' 근처의 구문이 잘못되었습니다.

서버: 메시지 170, 수준 15, 상태 1, 줄 8

줄 8: ')' 근처의 구문이 잘못되었습니다.



이런 에러가나오네요.. 답변 부탁드립니다




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

isNull -> Nvl로 바꾸십시오. 


.님이 2008-05-22 17:10에 작성한 댓글입니다. Edit

아 mssql 2000에서는 nvl이 적용이 안되고 isnull 로 바꾸어야해서요..

insert(a)  select isnull(select * from a);  해도머 에러 뷁.

너는매운면(inhosu)님이 2008-05-22 17:21에 작성한 댓글입니다.

isnull(select * from tmp)  -> 이 구문 자체가 틀렸는데요.. 

이런 구문은 성립하지 않습니다. 저 테이블이 두개의 column을 가진 table이라고 가정하고 
하나는 null, 하나는 data일때 isnull에서는 어찌 처리해야 할까요? 

이런 현상은 두개이상의 Row도 마찬가집니다. 

또한 isnull은 isnull(value, replace_value)이기 때문에 그 function의 사용도 틀렸구요. 
이는 nvl도 마찬가지라 여겨지는데요 ^^


.님이 2008-05-22 18:17에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
4222sp_helpdb 로 데이터베이트 리스트를 가져올려고 하는데요. [1]
우왁
2008-05-23
4617
4221쿼리 부탁드립니다(pivot을 쓰면 될까요?) [2]
오라클
2008-05-22
4855
4220SP작성할때 커서에 테이블명을 변수로 지정 할 수 없나요? [1]
박정열
2008-05-22
5020
4219오라클 insert mssql2000 insert 문으로 교체~~질문 [3]
너는매운면
2008-05-22
4977
4218update 질문이요. 도와주세요~~ [2]
김형일
2008-05-22
4236
4217Agent 작업 실행 및 에러처리
고형석
2008-05-22
4081
4216링크드서버 view로 테이블생성 문제...
유보현
2008-05-21
4240
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다