책 내용 질문하기
여러가지 질문있습니다.
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
조회수
51
작성일
2018-10-04
작성자
탈퇴*원
첨부파일

1. DDL의 정의에 대해서 질문했었는데

DDL의 정의를 '스키마, 인덱스, 뷰, 테이블, 도메인, 제약조건, 트리거를 정의하거나 변경, 제거할 때 사용되는 언어'라고 쓸 경우에 세가지 언어(CREATE, ALTER, DROP)가 모두 7가지 종류에 대해 정의, 변경, 제거 기능이 있는 것으로 해석될 오류가 존재하지 않나요?

CREATE는 위 7가지 종류 중 '제약조건'은 해당이 안되고 ALTER은 '테이블' 만 해당되는데 정의를 조금 변경해야하지 않나요?

2.

2권 109페이지 문제 6번에서 기본급에 콤마(,)가 포함되어있는데 정답에는 SQL에 콤마가 없습니다.

SQL 입력시 천단위 구분기호(,)는 쓰면 안되는건가요?

3.

2권 116쪽 1번문제에 대한 답을

CREATE VIEW ST_목록(제품.제품코드, 제품.제품명, 판매.수량)

AS SELECT 제품.제품코드, 제품.제품명, 판매.수량

FROM 제품, 판매

WHERE 제품.제품코드 = 판매.제품ID;

또는

CREATE VIEW ST_목록(제품코드, 제품명, 수량)

AS SELECT 제품.제품코드, 제품.제품명, 판매.수량

FROM 제품, 판매

WHERE 제품.제품코드 = 판매.제품ID;

이렇게 써도 되나요?

답변
2018-10-05 10:21:34

안녕하세요. 길벗 수험서 운영팀입니다.

1. DDL의 정의에 대해서 질문했었는데

DDL의 정의를 '스키마, 인덱스, 뷰, 테이블, 도메인, 제약조건, 트리거를 정의하거나 변경, 제거할 때 사용되는 언어'라고 쓸 경우에 세가지 언어(CREATE, ALTER, DROP)가 모두 7가지 종류에 대해 정의, 변경, 제거 기능이 있는 것으로 해석될 오류가 존재하지 않나요?

CREATE는 위 7가지 종류 중 '제약조건'은 해당이 안되고 ALTER은 '테이블' 만 해당되는데 정의를 조금 변경해야하지 않나요?

[답변]

구체적으로 답변하면 회원님의 말씀이 맞습니다.

TTA에서 DDL의 정의 중 "Table이나 View 등 Object를 생성/수정/삭제하는 기능을 한다."라고 언급하고 있습니다.

(view 및 몇몇 object는 수정이 불가능함에도)

용어 정의를 사용하는데 가장 기준이 되는 TTA에서도 동일한 방식으로 DDL을 설명하고 있음으로 큰 문제는 없을 것 같습니다.

만약 불안하시다면, DDL의 정의에 아래의 문구를 사용하는 것은 어떠할까 싶습니다.

"데이터베이스에서 데이터와 데이터 간의 관계를 정의하여 데이터베이스 구조를 설정하는 SQL문"

2.2권 109페이지 문제 6번에서 기본급에 콤마(,)가 포함되어있는데 정답에는 SQL에 콤마가 없습니다.

SQL 입력시 천단위 구분기호(,)는 쓰면 안되는건가요?

[답변]

예, 사용할 수 없습니다.

천 단위 구분기호로 사용되는 쉼표는 구분자로 사용되는 쉼표(,)와 혼동되어 데이터에 문제를 일으킬 가능성이 있습니다.

문제에서 수치에 천단위 구분기호(,)가 있다고 하더라도 SQL문에서는 빼고 입력해주세요.

3. 2권 116쪽 1번문제에 대한 답을

CREATE VIEW ST_목록(제품.제품코드, 제품.제품명, 판매.수량)

AS SELECT 제품.제품코드, 제품.제품명, 판매.수량

FROM 제품, 판매

WHERE 제품.제품코드 = 판매.제품ID;

또는

CREATE VIEW ST_목록(제품코드, 제품명, 수량)

AS SELECT 제품.제품코드, 제품.제품명, 판매.수량

FROM 제품, 판매

WHERE 제품.제품코드 = 판매.제품ID;

이렇게 써도 되나요?

[답변]

전자는 사용 가능하나, 후자는 사용 불가능합니다.

create view 뷰이름(뷰에서 사용될 속성이름) 형식으로 사용하는 create view에 있어서 뷰의 속성이름에 테이블이 들어가는 '제품.'과 같은 형식은 사용이 불가능합니다.

행복한 하루되세요.^^

  • *
    2018-10-05 10:21:34

    안녕하세요. 길벗 수험서 운영팀입니다.

    1. DDL의 정의에 대해서 질문했었는데

    DDL의 정의를 '스키마, 인덱스, 뷰, 테이블, 도메인, 제약조건, 트리거를 정의하거나 변경, 제거할 때 사용되는 언어'라고 쓸 경우에 세가지 언어(CREATE, ALTER, DROP)가 모두 7가지 종류에 대해 정의, 변경, 제거 기능이 있는 것으로 해석될 오류가 존재하지 않나요?

    CREATE는 위 7가지 종류 중 '제약조건'은 해당이 안되고 ALTER은 '테이블' 만 해당되는데 정의를 조금 변경해야하지 않나요?

    [답변]

    구체적으로 답변하면 회원님의 말씀이 맞습니다.

    TTA에서 DDL의 정의 중 "Table이나 View 등 Object를 생성/수정/삭제하는 기능을 한다."라고 언급하고 있습니다.

    (view 및 몇몇 object는 수정이 불가능함에도)

    용어 정의를 사용하는데 가장 기준이 되는 TTA에서도 동일한 방식으로 DDL을 설명하고 있음으로 큰 문제는 없을 것 같습니다.

    만약 불안하시다면, DDL의 정의에 아래의 문구를 사용하는 것은 어떠할까 싶습니다.

    "데이터베이스에서 데이터와 데이터 간의 관계를 정의하여 데이터베이스 구조를 설정하는 SQL문"

    2.2권 109페이지 문제 6번에서 기본급에 콤마(,)가 포함되어있는데 정답에는 SQL에 콤마가 없습니다.

    SQL 입력시 천단위 구분기호(,)는 쓰면 안되는건가요?

    [답변]

    예, 사용할 수 없습니다.

    천 단위 구분기호로 사용되는 쉼표는 구분자로 사용되는 쉼표(,)와 혼동되어 데이터에 문제를 일으킬 가능성이 있습니다.

    문제에서 수치에 천단위 구분기호(,)가 있다고 하더라도 SQL문에서는 빼고 입력해주세요.

    3. 2권 116쪽 1번문제에 대한 답을

    CREATE VIEW ST_목록(제품.제품코드, 제품.제품명, 판매.수량)

    AS SELECT 제품.제품코드, 제품.제품명, 판매.수량

    FROM 제품, 판매

    WHERE 제품.제품코드 = 판매.제품ID;

    또는

    CREATE VIEW ST_목록(제품코드, 제품명, 수량)

    AS SELECT 제품.제품코드, 제품.제품명, 판매.수량

    FROM 제품, 판매

    WHERE 제품.제품코드 = 판매.제품ID;

    이렇게 써도 되나요?

    [답변]

    전자는 사용 가능하나, 후자는 사용 불가능합니다.

    create view 뷰이름(뷰에서 사용될 속성이름) 형식으로 사용하는 create view에 있어서 뷰의 속성이름에 테이블이 들어가는 '제품.'과 같은 형식은 사용이 불가능합니다.

    행복한 하루되세요.^^

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.