oracle

    CHAR와 VARCHAR

    DBMS에서 지원하는 데이터 타입에서 살펴봤듯이 각종 DBMS가 지원하는 대표적인 문자형 데이터 타입에는 고정 길이 문자형을 표현하는 'CHAR'와 가변 길이 문자형을 표현하는 'VARCHAR'[각주:1]가 있습니다. 필자는 고정 길이와 가변 길이로 구분한 이유가 궁금했습니다. 데이터 타입을 고정 길이와 가변 길이 형태로 구분한 이유가 무엇일까요? ANSI SQL 표준화 작업 과정 중 데이터전문가들이 검토한 결과로 데이터베이스에서 문자형을 표현하는 데이터 타입을 고정/가변 길이로 구분할 필요성이 있었던 것 같습니다. 아마도 데이터 표현과 데이터 관리의 명확성 때문에 위와 같이 구분한 것 아닐까요? 데이터 타입을 명확히 구분하는 것이 해당 속성의 데이터 특성을 이해하는데 훨씬 효율적일 것입니다. 하지만 데..

    DBMS에서 지원하는 데이터 타입

    데이터 모델을 설계하는 과정에서 속성을 도출하고, 속성의 데이터 타입(Data Type)을 결정하는 과정은 꽤 복잡합니다. 그러나 지금까지 경험을 비추어보면, 다양한 상황을 고려하지 않고 데이터 타입을 선택하는 경우가 많았습니다. 이 결과로 말미암아, 속성의 특성에 알맞은 데이터 타입을 사용하지 못하고, 부정확하게 사용하는 경우를 자주 볼 수 있었습니다. 올바른 데이터 타입을 선정하는 것은 매우 중요합니다. 왜냐하면, 데이터 타입을 결정하면 다양한 제약조건이 만들어지고 데이터 타입을 변경하기 어렵기 때문[각주:1]입니다. 이뿐만 아니라, 질의(Query) 작성과 응용 프로그램의 성능에도 큰 영향을 미치게 됩니다[각주:2]. 이 문서에서 현존하는 모든 DBMS에서 지원하는 데이터 타입을 다루는 것은 불가능..

    오라클의 눈으로 알티베이스를 보다

    2013년 초반은 더욱더 빠른 속도로 제 곁에서 떠나는 것 같습니다. 아마도 나름대로 바쁘게 시간을 보냈기 때문인 것 같기도 합니다. 점점 더 여유가 사라지는 것 같아 아쉽기도 합니다만, 지금은 여유(?)를 부릴 때가 아닌 것 같습니다. "급할수록 돌아가라."라는 속담도 있지만, 여유는 시간이 좀 더 지난 후에 가져야 할 것 같습니다. 책을 읽는 것을 좋아하지만, 한동안 여러 가지 요인으로 말미암아 책을 읽지 못했습니다. 많은 시간을 할애하지 못해 꽤(?) 오래 걸리긴 했지만, 틈틈이 읽은 책이 한 권 있습니다. 책의 제목은 '오라클의 눈으로 알티베이스를 보다.'입니다. 교수님께서 한국데이터베이스진흥원에서 개최한 연수 프로그램에 참석하셔서 받으셨는데, 이미 소지하고 계셔서 제게 선물로 주셨습니다. 책의 ..

    실행계획, SQL 작성 후 반드시 확인하자.

    지난번에 소개했던 SQL(Structured Query Language)에서 SQL에 대해 간단히 살펴보는 시간을 가졌습니다. 이번 시간에는 많은 분이 놓치고 있는 중요한 내용에 대해 이야기하려 합니다. 글의 작성 순서로 볼 때, 기본적인 SQL 작성법을 먼저 설명하는 것이 옳을 것입니다만, 제가 쓰는 글이 어떤 순서를 갖고 쓰이는 책이 아니기에 꼭 순서를 맞출 필요는 없다고 판단되어 이 주제부터 작성합니다. 오늘 작성하는 글의 주제는 SQL을 어느 정도 숙지하고 있는 독자를 대상으로 이야기를 진행합니다. 응용프로그램을 작성하다 보면 데이터베이스를 활용하는 코드를 빈번히 작성할 것입니다. 이때, 많은 개발자가 작성한 질의문의 결과를 확인한 후, 이 결과가 옳으면 질의문의 성능을 검증하지 않고 바로 프로그..