
mysqli_result::fetch_field 메소드는 MySQLi 연결 결과에서 필드 정보를 반환합니다. 필드 정의와 필드 전표는 MySQL의 내부 정보이므로, 일반적으로 사용자에게 노출되지 않습니다. 그러나, MySQLi 확장 함수를 사용할 때, 이러한 정보를 얻을 수 있습니다.
필드 정의($field->orgname)는 MySQL의 내부 테이블 구조에 대한 정보를 나타냅니다. 예를 들어, 필드 정의는 테이블의 열 이름, 데이터 타입, 크기, 제약 조건 등에 대한 정보를 포함할 수 있습니다.
필드 전표($field->def)는 MySQL의 내부 테이블 구조에 대한 정보를 나타냅니다. 예를 들어, 필드 전표는 테이블의 열 이름, 데이터 타입, 크기, 제약 조건 등에 대한 정보를 포함할 수 있습니다. 필드 전표는 필드 정의와 유사하지만, 더 자세한 정보를 제공할 수 있습니다.
위의 예제에서 필드 정의($field->orgname)과 필드 전표($field->def)의 차이점은 다음과 같습니다.
- 필드 정의($field->orgname)는 테이블의 열 이름, 데이터 타입, 크기, 제약 조건 등에 대한 정보를 포함할 수 있습니다.
- 필드 전표($field->def)는 테이블의 열 이름, 데이터 타입, 크기, 제약 조건 등에 대한 정보를 포함할 수 있습니다. 필드 전표는 필드 정의와 유사하지만, 더 자세한 정보를 제공할 수 있습니다.
예를 들어, 다음과 같은 테이블이 있다고 가정해 보겠습니다.
#hostingforum.kr
sql
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
위의 테이블을 MySQLi 확장 함수를 사용하여 조회할 때, 필드 정의($field->orgname)과 필드 전표($field->def)의 값은 다음과 같습니다.
#hostingforum.kr
php
$result = $mysqli->query("SELECT * FROM users");
$field = $result->fetch_field();
echo $field->orgname . "n"; // id INT PRIMARY KEY AUTO_INCREMENT
echo $field->def . "n"; // id INT(11) NOT NULL AUTO_INCREMENT
위의 예제에서 필드 정의($field->orgname)는 테이블의 열 이름, 데이터 타입, 크기, 제약 조건 등에 대한 정보를 포함합니다. 필드 전표($field->def)는 테이블의 열 이름, 데이터 타입, 크기, 제약 조건 등에 대한 정보를 포함하며, 더 자세한 정보를 제공합니다.
2025-07-13 18:22