F.20. ISN - 국제 표준 수에 대한 데이터 유형 (젠 토토, EAN, UPC 등)#

theISN모듈은 EAN13, UPC, 젠 토토 (Books), ISMN (Music) 및 ISSN (Serials)의 다음 국제 제품 번호 표준에 대한 데이터 유형을 제공합니다. 숫자는 하드 코딩 된 접두사 목록에 따라 입력에서 검증됩니다.

이 모듈이 고려됩니다신뢰할 수있는Create현재 데이터베이스의 권한.

F.20.1. 데이터 유형#

테이블 F.10ISN모듈.

표 F.10. ISN데이터 유형

데이터 유형 설명
ean13 유럽 기사 번호, 항상 EAN13 디스플레이 형식으로 표시
젠 토토13 새로운 EAN13 디스플레이 형식으로 표시 될 국제 표준 책 번호
ISMN13 새로운 EAN13 디스플레이 형식으로 표시 될 국제 표준 음악 번호
ISSN13 새로운 EAN13 디스플레이 형식으로 표시 될 국제 표준 일련 번호
젠 토토 기존 짧은 디스플레이 형식으로 표시 될 국제 표준 책 번호
ISMN 기존 짧은 디스플레이 형식으로 표시 될 국제 표준 음악 번호
issn 기존 짧은 디스플레이 형식으로 표시 될 국제 표준 일련 번호
UPC 범용 제품 코드

일부 참고 사항 :

  1. 젠 토토13, ISMN13, ISSN13 숫자는 모두 EAN13 숫자입니다.

  2. EAN13 숫자는 항상 젠 토토13, ISMN13 또는 ISSN13 (일부 ARE)는 아닙니다.

  3. 일부 젠 토토13 숫자를 젠 토토으로 표시 할 수 있습니다.

  4. 일부 ISMN13 숫자를 ISMN으로 표시 할 수 있습니다.

  5. 일부 ISSN13 번호는 ISSN으로 표시 될 수 있습니다.

  6. UPC 번호는 EAN13 숫자의 하위 집합입니다 (기본적으로 첫 번째 ean13입니다0숫자).

  7. All UPC, 젠 토토, ISMN 및 ISSN 번호는 EAN13 숫자로 표시 될 수 있습니다.

내부적으로 이러한 모든 유형은 동일한 표현 (64 비트 정수)을 사용하며 모두 상호 교환 가능합니다. 제어 디스플레이 서식 및 하나의 특정 유형의 숫자를 나타내는 입력의 더 엄격한 유효성 검사를 허용하기 위해 여러 유형이 제공됩니다.

the젠 토토, ISMNissn유형은 가능할 때마다 짧은 버전의 숫자 (ISXN 10)를 표시하며 짧은 버전에 맞지 않는 숫자에 대한 ISXN 13 형식을 표시합니다. 그만큼ean13, 젠 토토13, ISMN13andISSN13유형은 항상 ISXN의 긴 버전 (EAN13)을 표시합니다.

F.20.2. 캐스트#

theISN모듈은 다음 유형의 캐스트 쌍을 제공합니다.

  • 젠 토토13 <=> ean13

  • ISMN13 <=> ean13

  • ISSN13 <=> ean13

  • 젠 토토 <=> ean13

  • ISMN <=> ean13

  • issn <=> ean13

  • UPC <=> ean13

  • 젠 토토 <=> 젠 토토13

  • ISMN <=> ISMN13

  • ISSN <=> ISSN13

출연 할 때ean13다른 유형의 경우 값이 다른 유형의 도메인 내에 있고 그렇지 않으면 오류가 발생하는 런타임 확인이 있습니다. 다른 캐스트는 단순히 항상 성공할 방사입니다.

F.20.3. 기능 및 운영자#

theISN모듈은 표준 비교 연산자와 이러한 모든 데이터 유형에 대한 B- 트리 및 해시 인덱싱 지원을 제공합니다. 또한 몇 가지 특수 기능이 있습니다.테이블 F.11. 이 테이블에서ISN모듈의 데이터 유형 중 하나를 의미합니다.

표 F.11. ISN기능

기능

설명

ISN_WEAK ( 부울) →부울

약한 입력 모드를 설정하고 새 설정을 반환합니다.

ISN_WEAK() →부울

약한 모드의 현재 상태를 반환합니다.

make_valid ( ISN) →ISN

유효하지 않은 숫자를 확인합니다 (유효하지 않은 플래그 지우기)

is_valid ( ISN) →부울

잘못된 플래그의 존재를 확인합니다.


약한모드는 유효하지 않은 데이터를 테이블에 삽입 할 수 있습니다. 잘못된 숫자가 잘못되었음을 의미합니다. 숫자가 누락 된 것은 아닙니다.

왜 약한 모드를 사용하고 싶습니까? 글쎄, 당신은 당신이 거대한 젠 토토 번호 모음을 가지고있을 수 있으며, 이상한 이유로 일부는 잘못된 체크 숫자를 가지고있을 수 있습니다 (아마도 숫자가 인쇄 된 목록에서 스캔되었고 OCR이 숫자가 잘못되었을 것입니다. 아마도 숫자가 수동으로 포착되었을 것입니다 ...

약한 모드를 사용하여 테이블에 유효하지 않은 숫자를 삽입하면 수정 된 체크 숫자와 함께 숫자가 삽입되지만 느낌표 (로 표시됩니다.!) 끝에서0-11-000322-5!. 이 잘못된 마커는로 확인할 수 있습니다.is_valid함수와 함께 지우기make_valid기능.

약한 모드가 아닌 경우에도 유효하지 않은 숫자의 삽입을 강요 할 수도 있습니다.!숫자 끝의 문자.

또 다른 특별 기능은 입력 중에 쓸 수 있다는 것입니다?체크 숫자 대신에 올바른 체크 숫자가 자동으로 삽입됩니다.

F.20.4. 예#

-직접 유형 사용 :

F.20.5. 서지#

이 모듈을 구현하기위한 정보는 다음을 포함하여 여러 사이트에서 수집되었습니다.

하이픈 화에 사용되는 접두사도 다음과 같이 컴파일되었습니다.

알고리즘 생성 중에 치료를 받았으며 공식 젠 토토, ISMN, ISSN 사용자 매뉴얼의 제안 된 알고리즘에 대해 세 심하게 검증되었습니다..

F.20.6. 작가#

Germán Méndez Bravo (Kronuz), 2004–2006

이 모듈은 Garrett A. Wollman 's에서 영감을 받았습니다젠 토토_ISSN코드.

수정 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다.이 양식문서 문제를보고하려면