JetRenameColumn 함수
적용 대상: Windows | Windows Server
JetRenameColumn 함수
JetRenameColumn 함수를 사용하여 테이블의 기존 열 이름을 변경할 수 있습니다.
Windows XP:JetRenameColumn 은 Windows XP에 도입되었습니다.
JET_ERR JET_API JetRenameColumn(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in JET_PCSTR szName,
__in JET_PCSTR szNameNew,
__in JET_GRBIT grbit
);
매개 변수
sesid
이 호출에 사용할 세션입니다.
tableid
이 호출에 사용할 커서입니다.
szName
이름을 바꿀 열의 현재 이름입니다.
szNameNew
이름을 바꿀 열의 새 이름입니다.
grbit
이 매개 변수는 0이어야 합니다.
반환 값
이 함수는 다음 반환 코드 중 하나를 사용하여 JET_ERR 데이터 형식을 반환합니다. 가능한 ESE 오류에 대한 자세한 내용은 확장 가능한 스토리지 엔진 오류 및 오류 처리 매개 변수를 참조하세요.
반환 코드 |
설명 |
---|---|
JET_errSuccess |
작업이 성공적으로 완료되었습니다. |
JET_errClientRequestToStopJetService |
JetStopService 호출로 인해 세션과 연결된 instance 모든 작업이 중단되었으므로 작업을 완료할 수 없습니다. |
JET_errColumnNotFound |
이 테이블에 대해 지정된 열이 없습니다. |
JET_errInvalidName |
지정한 개체 이름 중 하나가 잘못되었습니다. 모든 개체 이름은 동일한 규칙 집합을 준수해야 합니다. 이러한 규칙은 다음과 같습니다.
|
JET_errInvalidParameter |
제공된 매개 변수 중 하나에 예기치 않은 값이 포함되어 있거나 다른 매개 변수의 값과 결합할 때 의미가 없는 값이 포함되어 있습니다. 이 작업은 다음과 같은 경우 JetRenameColumn 에서 발생할 수 있습니다.
|
JET_errInstanceUnavailable |
세션과 연결된 instance 해당 데이터의 무결성을 보호하기 위해 모든 데이터에 대한 액세스를 해지해야 하는 심각한 오류가 발생하여 작업을 완료할 수 없습니다. 이 오류는 Windows XP 이상 릴리스에서만 반환됩니다. |
JET_errInTransaction |
이 작업은 세션이 현재 트랜잭션 내에 있지 않은 경우에만 수행할 수 있습니다. |
JET_errNotInitialized |
세션과 연결된 instance 아직 초기화되지 않았기 때문에 작업을 완료할 수 없습니다. |
JET_errRestoreInProgress |
세션과 연결된 instance 복원 작업이 진행 중이므로 작업을 완료할 수 없습니다. |
JET_errSessionSharingViolation |
동시에 둘 이상의 스레드에 동일한 세션을 사용할 수 없습니다. 이 오류는 Windows XP 이상 릴리스에서만 반환됩니다. |
JET_errTermInProgress |
세션과 연결된 instance 종료 중이므로 작업을 완료할 수 없습니다. |
JET_errTransReadOnly |
읽기 전용 트랜잭션의 scope 내에 있는 동안에는 업데이트를 수행할 수 없습니다. 읽기 전용 트랜잭션은 JET_bitTransactionReadOnly JetBeginTransaction2 호출을 사용하여 시작된 트랜잭션입니다. 이 오류는 Windows XP 이상 릴리스에서만 반환됩니다. |
성공하면 커서와 연결된 테이블의 지정된 열 이름이 새 이름으로 영구적으로 변경됩니다. 해당 열을 참조하는 인덱스도 업데이트됩니다.
오류가 발생하면 데이터베이스 상태가 변경되지 않습니다.
설명
열 이름 바꾸기 작업은 다른 스키마 작업과 달리 트랜잭션으로 수행되지 않기 때문에 비정상적입니다. 지정된 테이블의 열 이름이 한 세션에서 바뀌면 해당 테이블을 사용하는 다른 세션에서는 해당 세션이 이름 바꾸기 작업을 수행하는 다른 변경 내용을 볼 수 없는 트랜잭션에 있더라도 즉시 변경 내용이 표시됩니다.
열의 열 ID는 이름 바꾸기 작업의 영향을 받지 않습니다.
요구 사항
요구 사항 | 값 |
---|---|
클라이언트 |
Windows Vista 또는 Windows XP가 필요합니다. |
서버 |
Windows Server 2008 또는 Windows Server 2003이 필요합니다. |
머리글 |
Esent.h에 선언되었습니다. |
라이브러리 |
ESENT.lib를 사용합니다. |
DLL |
ESENT.dll 필요합니다. |
유니코드 |
JetRenameColumnW(유니코드) 및 JetRenameColumnA(ANSI)로 구현됩니다. |
참고 항목
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetBeginTransaction2