JET_COLUMNBASE 구조체
적용 대상: Windows | Windows Server
JET_COLUMNBASE 구조체
JET_COLUMNBASE 구조체는 기본 열의 매개 변수를 설명합니다. JetGetColumnInfo 및 JetGetTableColumnInfo 함수는 JET_COLUMNBASE 구조를 사용합니다.
typedef struct {
unsigned long cbStruct;
JET_COLUMNID columnid;
JET_COLTYP coltyp;
unsigned short wCountry;
unsigned short langid;
unsigned short cp;
unsigned short wFiller;
unsigned long cbMax;
JET_GRBIT grbit;
tchar szBaseTableName[256];
tchar szBaseColumnName[256];
} JET_COLUMNBASE;
멤버
cbStruct
이 구조체의 크기(바이트)입니다. cbStruct를 sizeof(JET_COLUMNBASE )로 설정합니다.
columnid
예약되어 있습니다. columnid를 0으로 설정합니다.
coltyp
열의 형식(예: 텍스트, 이진 또는 숫자)입니다. 자세한 내용은 JET_COLTYP.
wCountry
예약되어 있습니다. 0으로 설정합니다.
Langid
예약되어 있습니다. 0으로 설정합니다.
cp
열의 코드 페이지입니다. 텍스트 열에 유효한 값은 영어(1252) 및 유니코드(1200)뿐입니다. 값이 0이면 기본값이 사용됩니다(영어, 1252). 열이 텍스트 열이 아니면 코드 페이지가 자동으로 0으로 설정됩니다.
wFiller
예약되어 있습니다. 0으로 설정합니다.
cbMax
고정 길이 열의 가변 길이 열 또는 실제 길이(바이트)의 최대 길이(바이트)입니다.
grbit
다음 값 중 0개 이상을 포함하여 열에 대한 옵션입니다.
값 |
의미 |
---|---|
JET_bitColumnFixed |
열은 고정되어 있으며 포함된 데이터의 양에 관계없이 행에서 동일한 양의 공간을 차지합니다. JET_bitColumnFixed JET_bitColumnTagged 결합할 수 없으며 coltyp 멤버를 JET_coltypLongText 또는JET_coltypLongBinary 설정할 때 사용할 수 없습니다. |
JET_bitColumnTagged |
열은 태그가 지정되고 데이터가 포함된 경우에만 데이터베이스의 공간을 차지합니다. JET_bitColumnTagged JET_bitColumnFixed, JET_bitColumnVersion 또는 JET_bitColumnEscrowUpdate 결합할 수 없습니다. |
JET_bitColumnNotNULL |
열을 NULL 값으로 설정하면 안 됩니다. JET_bitColumnNotNULL JET_bitColumnUserDefinedDefault 결합할 수 없습니다. |
JET_bitColumnVersion |
열은 행의 버전을 지정하는 버전 열입니다. 이 열의 값은 0에서 시작하여 행의 각 업데이트에 대해 자동으로 증가합니다. JET_bitColumnVersion coltyp 멤버가 JET_coltypLong 설정되고 JET_bitColumnAutoincrement, JET_bitColumnEscrowUpdate , JET_bitColumnTagged 또는 JET_bitColumnUserDefinedDefault 결합할 수 없는 경우에만 사용할 수 있습니다. |
JET_bitColumnAutoincrement |
열이 자동으로 증가합니다. 숫자는 증가하는 숫자이며 테이블 내에서 고유하도록 보장됩니다. 그러나 숫자는 순차적이지 않을 수 있습니다. 예를 들어 테이블에 5개의 행을 삽입하면 자동으로 증분된 열에 { 1, 2, 6, 7, 8 } 값이 포함될 수 있습니다. JET_bitColumnAutoincrement coltyp 멤버가 JET_coltypLong 또는 JET_coltypCurrency 설정되고 JET_bitColumnEscrowUpdate, JET_bitColumnUserDefinedDefault 또는 JET_bitColumnVersion 결합할 수 없는 경우에만 사용할 수 있습니다. Windows 2000: JET_bitColumnVersion coltyp 멤버가 JET_coltypLong 설정된 경우에만 사용할 수 있습니다. |
JET_bitColumnUpdatable |
JetGetColumnInfo 호출에만 유효합니다. JET_bitColumnUpdatable JET_bitColumnUserDefinedDefault 결합할 수 없습니다. |
JET_bitColumnTTKey |
JetOpenTable 호출에만 유효합니다. |
JET_bitColumnTTDescending |
JetOpenTempTable 호출에만 유효합니다. |
JET_bitColumnMultiValued |
열은 다중값일 수 있습니다. 다중값 열에는 연결된 값이 0개, 하나 이상 있을 수 있습니다. 다중값 열의 다양한 값은 다양한 구조체의 itagSequence 멤버에 있는 숫자(예: JET_RETINFO, JET_SETINFO, JET_SETCOLUMN, JET_RETRIEVECOLUMN, JET_ENUMCOLUMNVALUE)로 식별됩니다. 다중값 열은 태그가 지정된 열이어야 합니다. 즉, 고정 길이 또는 가변 길이 열이 아닐 수 있습니다. |
JET_bitColumnEscrowUpdate |
열이 JetEscrowUpdate 를 사용하여 여러 세션에서 동시에 업데이트할 수 있고 트랜잭션 일관성이 있는 에스크로 업데이트 열임을 지정합니다.
|
JET_bitColumnUnversioned |
열은 버전 번호 없이 만들어집니다. 즉, 동일한 이름의 열을 추가하려는 다른 트랜잭션이 실패합니다. JET_bitColumnUnversioned JetAddColumn에서만 사용됩니다. 트랜잭션 내에서 사용할 수 없습니다. |
JET_bitColumnMaybeNull |
다음에 사용하도록 예약됩니다. JET_bitColumnMaybeNull JET_bitColumnUserDefinedDefault 결합할 수 없습니다. |
JET_bitColumnFinalize |
사용하지 마십시오. 대신 JET_bitColumnDeleteOnZero 사용합니다. 열을 완료할 수 있습니다. 완료할 수 있는 열은 열이 0에 도달하면 행이 삭제되도록 하는 에스크로 업데이트 열입니다. 이후 버전에서는 콜백 함수를 대신 호출할 수 있습니다( JET_CALLBACK 참조). 완료할 수 있는 열은 에스크로 업데이트 열이어야 합니다. JET_bitColumnFinalize JET_bitColumnUserDefinedDefault 결합할 수 없습니다. |
JET_bitColumnUserDefinedDefault |
열의 기본값은 콜백 함수에서 제공됩니다. JET_CALLBACK 참조하세요. 사용자 정의 기본값이 있는 열은 태그가 지정된 열이어야 합니다. JET_bitColumnUserDefinedDefault 지정한 경우 pvDefault 는 JET_USERDEFINEDDEFAULT 구조를 가리킨 다음 cbDefault 를 sizeof( JET_USERDEFINEDDEFAULT )로 설정해야 합니다. JET_bitColumnUserDefinedDefault JET_bitColumnFixed, JET_bitColumnNotNULL, JET_bitColumnVersion, JET_bitColumnAutoincrement, JET_bitColumnUpdatable, JET_bitColumnEscrowUpdate, JET_bitColumnFinalize, JET_bitColumnDeleteOnZero 또는 JET_bitColumnMaybeNull 결합할 수 없습니다. |
JET_bitColumnDeleteOnZero |
열은 에스크로 업데이트 열이며 0에 도달하면 레코드가 삭제됩니다. 0에서 삭제 열의 일반적인 용도는 참조 개수 필드입니다. 참조 수가 0으로 떨어지면 레코드가 삭제됩니다. 0에 삭제 열은 에스크로 업데이트 열이어야 합니다. JET_bitColumnDeleteOnZero JET_bitColumnFinalize 대체합니다. JET_bitColumnDeleteOnZero JET_bitColumnFinalize 또는 JET_bitColumnUserDefinedDefault 결합할 수 없으며 사용자 정의 기본 열과 함께 사용할 수 없습니다. |
szBaseTableName
현재 테이블이 해당 DDL을 상속하는 테이블입니다.
szBaseColumnName
템플릿 테이블의 열 이름입니다.
설명
JET_COLUMNBASEJET_COLUMNDEF 동일한 정보를 많이 포함하지만 기본 테이블을 설명하는 문자열 필드를 추가합니다(계층적 DDL을 사용한 경우).
요구 사항
요구 사항 | 값 |
---|---|
클라이언트 |
Windows Vista, Windows XP 또는 Windows 2000 Professional이 필요합니다. |
서버 |
Windows Server 2008, Windows Server 2003 또는 Windows 2000 Server가 필요합니다. |
머리글 |
Esent.h에서 선언되었습니다. |
유니코드 |
JET_COLUMNBASE_W(유니코드) 및 ANSI(JET_COLUMNBASE_A)로 구현됩니다. |
참고 항목
JET_CALLBACK
JET_COLTYP
JET_COLUMNDEF
JET_COLUMNID
JET_GRBIT
JET_SESID
JET_TABLEID
JET_USERDEFINEDDEFAULT
JetGetColumnInfo
JetGetTableColumnInfo
JetRenameColumn