자동 데이터 생성 기능으로 Populate()를 실행하면, SSN 필드에 값이 000-00-0000 형식으로 나오잖아요.
제 질문은 이것을 한국 주민번호양식으로 생성되게 하려면 어떻게 하면 될까요?
한국 주민번호 양식으로 값의 형식을 주려면, Cache DB에서 제공하는 패턴 매치 기능을 사용하면 됩니다.
패턴 매치 기능을 해당 프로퍼티에 파라미터로 주면 되는데, Cache Studio에서 해당 클래스를 열어 두고, 인스펙터에 Property라는 콤보 필터를 선택하면, 프로퍼티 목록이 나옵니다. 여기서 SSN 프로퍼티를 더블클릭하면, Parameter라는 항목들 중에 PATTERN이라는 항목이 있습니다. 이 칸에 값을 6N1"-"7N 로 주면 됩니다. 즉, 6번의 숫자와 1번의 하이픈(-) 그리고 이어서 7번의 숫자가 나오는 형식이라는 의미입니다.
이렇게 PATTERN 파라미터 값을 입력해 주고나면, 편집 창에 아래와 같이 Studio 프로퍼티 파라미터가 표시됩니다.
Property SSN As %String(PATTERN = "6N1""-""7N");
클래스를 컴파일 하고 SQL문을 아래와 같이 실행해서 확인해 보면 되겠습니다.
update Person set SSN='800218-123456' where id=1 위 문장을 실행하면 아래와 같은 오류가 납니다:
오류 #5540: SQLCODE: -105 메시지: Field 'Person.SSN' (value '800218-123456') failed validation
패턴 매치가 되지 않아 삽입이 안된다는 내용이지요. SQL문에서 패턴을 아래와 같이 정확하게 7자로 맞춰주면 정상으로 등록됩니다.
update Person set SSN='800218-1234567' where id=1
위 SQL문 실행 결과:
즐 코딩되세요!