by 여비몬 [2016.01.11 11:42:23]
안녕하세요
현재 프로그램에서 값을 가져오는게
테이블안에 sql문을 넣어서 가져오는 형식으로 되어있습니다.
case문을 insert할일이 생겨서
insert into table1 values ('CASE WHEN J.EXT1_CD = '2' THEN '제외' ELSE '' END EXT1_CD'')
이런식으로 insert를 하려고하는데 ext1_cd = '2' 이부분과 같이 ' '에 빨간줄이가면서 안되네요..
일반적인 방법으로는 안되는건가요?
단일 따옴표는 ASCII 코드 39번과 같습니다. 단일따옴표는 CHR(39)로 변경하여 입력가능합니다. ' ' => CHR(39)|| ' ' || CHR(39)
답변달아주셨는데 정말 감사합니다.
저렇게 했는데도 ' '근처의 구문이 잘못되었다며 INSERT가 안되는데 혹시 다른문제가 있을까요..?
insert into table1 values ('CASE WHEN J.EXT1_CD = ''2'' THEN ''제외'' ELSE NULL END EXT1_CD');
감사합니다
MSSQL이라그런지 안먹히네요ㅠㅠ
INSERT는 되는데 SELECT 할때 문제가되는것같은..
감사합니다!
오라클인경우(다른 db는 모르겠습니다.)
('case when j.ext1_cd = ''2'' then ''제외'' else '''' end ext1_cd')
이렇게도 가능합니다. 따옴표 안에서 따옴표 두개 '' -> '로 인식해요.
-------------------------------------------------------------
답변달고 보니 창조님이 먼저 달아주셨네요^^;
아참...MSSQL이네용...
저렇게하니까 인식을못하네요
흠 난감하군요ㅠㅠ
제가 실수했었네요! '''' 으로하니까 됩니다
새해복많이받으세요~