* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS |
Window10 |
CUBRID Ver. |
8.4.4.10001 |
CUBRID TOOL Ver. |
10.1.0003 |
응용 환경(API) |
java |
* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 |
재현 가능한 Source와 SQL |
관련 테이블(인덱스, 키정보 포함) 정보 |
CUBRID 홈 디렉토리 아래 log 디렉토리 압축 |
-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
CREATE OR REPLACE VIEW jnitmenu_vt(
menu_seq integer default 0,
site_nm character varying(50),
menu_depth1 character varying(50),
menu_depth2 character varying(50),
menu_depth3 character varying(50),
menu_depth4 character varying(50),
menu_depth5 character varying(50),
menu_depth6 character varying(50),
menu_depth7 character varying(50),
menu_url character varying(1),
menu_dept character varying(100),
menu_part character varying(200),
menu_tel character varying(20),
menu_memid character varying(20),
[method] character varying(1))
AS
select [b].[MENU_SEQ], [a].[SITE_NM], [a].[MENU_DEPTH1], [a].[MENU_DEPTH2], [a].[MENU_DEPTH3], [a].[MENU_DEPTH4], [a].[MENU_DEPTH5], [a].[MENU_DEPTH6],
[a].[MENU_DEPTH7], [a].[MENU_URL], [b].[MENU_DEPT], [b].[MENU_PART], [b].[MENU_TEL], [b].[MENU_MEMID], [a].[METHOD]
from [jnitcmsmenu_vt] [a] left outer join [jnitmenu] [b] on ( cast([b].[MENU_URL] as varchar(255) )=[a].[MENU_URL])
where (([a].[ISCNT]= cast(1 as varchar )) and ([a].[ISDEL]= cast(0 as varchar )))
order by [a].[SITE_ID], 15, [a].[DEPTH];
위 쿼리로 view 테이블을 생성하였습니다.
jnitcmsmenu_vt 는 또다른 view 테이블이고
jnitmenu 는 실제 테이블입니다.
상단에 select 문만 실행해보면
select [b].[MENU_SEQ], [a].[SITE_NM], [a].[MENU_DEPTH1], [a].[MENU_DEPTH2], [a].[MENU_DEPTH3], [a].[MENU_DEPTH4], [a].[MENU_DEPTH5], [a].[MENU_DEPTH6],
[a].[MENU_DEPTH7], [a].[MENU_URL], [b].[MENU_DEPT], [b].[MENU_PART], [b].[MENU_TEL], [b].[MENU_MEMID], [a].[METHOD]
from [jnitcmsmenu_vt] [a] left outer join [jnitmenu] [b] on ( cast([b].[MENU_URL] as varchar(255) )=[a].[MENU_URL])
where (([a].[ISCNT]= cast(1 as varchar )) and ([a].[ISDEL]= cast(0 as varchar )))
order by [a].[SITE_ID], 15, [a].[DEPTH];
MENU_SEQ |
SITE_NM |
MENU_DEPTH1 |
MENU_DEPTH2 |
MENU_DEPTH3 |
MENU_DEPTH4 |
MENU_DEPTH5 |
MENU_DEPTH6 |
MENU_DEPTH7 |
MENU_URL |
MENU_DEPT |
MENU_PART |
MENU_TEL |
MENU_MEMID |
METHOD |
NULL |
북방경제협력위원회 |
include |
header |
NULL |
NULL |
NULL |
NULL |
NULL |
/ |
NULL |
NULL |
NULL |
NULL |
0 |
NULL |
북방경제협력위원회 |
include |
sidebar |
NULL |
NULL |
NULL |
NULL |
NULL |
/ |
NULL |
NULL |
NULL |
NULL |
0 |
NULL |
북방경제협력위원회 |
include |
footer |
NULL |
NULL |
NULL |
NULL |
NULL |
/ |
NULL |
NULL |
NULL |
NULL |
0 |
NULL |
북방경제협력위원회 |
소개・홍보 |
위원장 인사말 |
NULL |
NULL |
NULL |
NULL |
NULL |
/ |
NULL |
NULL |
NULL |
NULL |
0 |
NULL |
북방경제협력위원회 |
소개・홍보 |
위원회의 역할 |
NULL |
NULL |
NULL |
NULL |
NULL |
/ |
NULL |
NULL |
NULL |
NULL |
0 |
이런식으로 제대로 결과는 나옵니다.
크리에이트 문의 경우에도
1번째 질의 CREATE 작업 완료. [0.017 초]
메시지가 뜨면서 view 테이블이 제대로 만들어졌다는 표시가 나옵니다.
그런데
SELECT COUNT(*) totcnt FROM JNITMENU_VT WHERE 1=1
쿼리를 실행해보면
실행 오류 : -494
Semantic: There are more columns in the query specification than attributes in class jnitmenu_vt. select count(*) from JNITMENU_VT JNITMENU_VT where (1=1)
이런 메시지가 뜨면서 select 가 되지 않고 있습니다.
이런 현상을 어떻게 해결해야 하나요?
예시)
SELECT count(*)
from (
select [b].[MENU_SEQ], [a].[SITE_NM], [a].[MENU_DEPTH1], [a].[MENU_DEPTH2], [a].[MENU_DEPTH3], [a].[MENU_DEPTH4], [a].[MENU_DEPTH5], [a].[MENU_DEPTH6],
[a].[MENU_DEPTH7], [a].[MENU_URL], [b].[MENU_DEPT], [b].[MENU_PART], [b].[MENU_TEL], [b].[MENU_MEMID], [a].[METHOD]
from [jnitcmsmenu_vt] [a] left outer join [jnitmenu] [b] on ( cast([b].[MENU_URL] as varchar(255) )=[a].[MENU_URL])
where (([a].[ISCNT]= cast(1 as varchar )) and ([a].[ISDEL]= cast(0 as varchar )))
order by [a].[SITE_ID], 15, [a].[DEPTH] ) T1
where 1 = 1