SnowConvert AI - Oracle - Rowid 데이터 타입¶
설명¶
데이터베이스의 각 행에는 주소가 있습니다.(Oracle SQL 언어 참조 Rowid 데이터 타입)
ROWID DataType¶
설명¶
Oracle 데이터베이스에서 기본으로 제공되는 힙으로 구성된 테이블의 행에는 rowids라는 행 주소가 있습니다. 의사 열 ROWID 를 쿼리하여 행 주소를 검사할 수 있습니다. 이 의사 열의 값은 각 행의 주소를 나타내는 문자열입니다. 이러한 문자열의 데이터 타입은 ROWID 입니다. ROWID 데이터 타입의 실제 열을 포함하는 테이블 및 클러스터를 생성할 수도 있습니다. (Oracle SQL Language Reference ROWID 데이터 타입)
샘플 소스 패턴¶
Create Table의 ROWID¶
Oracle¶
Snowflake¶
ROWID 열에 데이터 삽입¶
아래 예시와 같이 삽입에 유효한 ROWID 가 있는 경우 ROWID 열에 데이터를 삽입할 수 있습니다. 안타깝게도 테이블에서 ROWID 검색은 허용되지 않습니다.
Oracle¶
결과¶
ROWID_COLUMN |
|---|
AAATtCAAMAAAADLABD |
Snowflake¶
결과¶
ROWID_COLUMN |
|---|
AAATtCAAMAAAADLABD |
Known Issues¶
참고
결과 세트가 너무 커서 _Row Limiting Clause_가 추가되었습니다. 이 절을 제거하면 전체 결과 세트를 검색할 수 있습니다.
1. 이 데이터 타입의 명시적 열이 없는 테이블에서 ROWID 검색하기
Snowflake 포럼 의 설명과 같이 ROWID 는 Snowflake에서 지원되지 않습니다. 다음 쿼리는 hr.employees에 ROWID 열이 포함되어 있지 않으므로 Snowflake는 오류를 표시합니다.
Oracle¶
결과¶
ROWID |
|---|
AAATtCAAMAAAADLABD |
AAATtCAAMAAAADLABV |
AAATtCAAMAAAADLABX |
AAATtCAAMAAAADLAAv |
AAATtCAAMAAAADLAAV |
AAATtCAAMAAAADLAAD |
AAATtCAAMAAAADLABL |
AAATtCAAMAAAADLAAP |
AAATtCAAMAAAADLAA6 |
AAATtCAAMAAAADLABg |
Snowflake¶
결과¶
위험
SQL 컴파일 오류: 잘못된 식별자 ‘ROWID’
UROWID 데이터 타입¶
설명¶
Oracle은 universal rowids(urowid)를 사용하여 인덱스가 지정된 테이블과 외부 테이블의 주소를 저장합니다. 인덱스로 조직된 테이블에는 논리적 urowid가 있고, 외래 테이블에는 외래 urowid가 있습니다. (Oracle SQL Language Reference UROWID 데이터 타입)
샘플 소스 패턴¶
Create Table의 UROWID¶
Oracle¶
Snowflake¶
UROWID 열에 데이터 삽입¶
ROWID와 같이 삽입에 유효한 UROWID가 있는 경우 UROWID 열에 데이터를 삽입할 수 있지만 테이블에서의 검색은 허용되지 않습니다.
Oracle¶
결과¶
UROWID_COLUMN |
UROWID_SIZED_COLUMN |
|---|---|
*BAMAAJMCVUv+ |
*BAMAAJMCVUv+ |
Snowflake** SSC-FDM-0007 - MISSING DEPENDENT OBJECT “urowid_table” **¶
결과¶
UROWID_COLUMN |
UROWID_SIZED_COLUMN |
|---|---|
*BAMAAJMCVUv+ |
*BAMAAJMCVUv+ |
Known Issues¶
참고
결과 세트가 너무 커서 _Row Limiting Clause_가 추가되었습니다. 이 절을 제거하면 전체 결과 세트를 검색할 수 있습니다.
1. 이 데이터 타입의 명시적 열이 없는 테이블에서 UROWID 검색하기
다음 쿼리는 hr.countries에 ROWID (Oracle 설명서 의 설명과 같이 UROWID 는 SELECT … ROWID 문으로 액세스됨) 열이 포함되어 있지 않으므로 Snowflake에서 오류를 표시합니다.
Oracle¶
결과¶
ROWID |
COUNTRY_NAME |
|---|---|
*BAMAAJMCQVL+ |
아르헨티나 |
*BAMAAJMCQVX+ |
오스트레일리아 |
*BAMAAJMCQkX+ |
벨기에 |
*BAMAAJMCQlL+ |
브라질 |
*BAMAAJMCQ0H+ |
캐나다 |
*BAMAAJMCQ0j+ |
스위스 |
*BAMAAJMCQ07+ |
중국 |
*BAMAAJMCREX+ |
독일 |
*BAMAAJMCREv+ |
덴마크 |
*BAMAAJMCRUf+ |
이집트 |
Snowflake¶
결과¶
위험
SQL 컴파일 오류: 잘못된 식별자 ‘ROWID’
2. EWI should be displayed by SnowConvert AI¶
EWI는 UROWID 열을 선택하려고 시도할 때 표시되어야 합니다. 해당 EWI를 추가하는 작업 항목이 있습니다.
위험
이 문제는 심각한 것으로 표시되었으며 향후 릴리스에서 수정될 예정입니다.
관련 EWIs¶
SSC-EWI-0036: 다른 데이터 타입으로 변환된 데이터 타입입니다.
SSC-FDM-OR0030: ROWID 의사 열은 Snowflake에서 지원되지 않습니다