2013-01-17 2 views
2

MySQLi의 prepared statement API에서 bind_param은 타입 스펙 char를 취한다.MySQLi 필드에서 타입 스펙 char 가져 오기

Type specification chars

MySQLi의 fetch_field이 분야와 관련된 여러 특성을 가진 개체를 반환합니다. 그러나 형식 지정 char은 사용할 수있는 속성 중 하나가 아닙니다 ($field->type은 형식 지정 char이 아닌 상수에 해당하는 정수를 반환합니다).

MySQLi 필드에서 유형 사양 char을 얻는 가장 좋은 방법은 무엇입니까?

+0

mysqli_result :: fetch_field()는 필드의 데이터 타입을 반환해야한다. 그 정도면 충분합니까? 아니면 특별히 편지 중 하나가 필요합니까? bind_param 인수가 fetch_field에 묶이는 방법을 모르겠습니다 ... –

+0

@MikeB 제 목표는 구체적으로 형식 사양 char를 얻는 것입니다. 내 자신의 메서드를 만들 수 있지만이 핵심 API를 통해 수행 할 수있는 뭔가가 될 것 같아요. – Vulcan

+0

상관 있습니까? Type은 1 : 1을 bind_param이 사용하는 유형으로 매핑하지 않습니다. 자체 변환 배열을 만들어야합니다. – datasage

답변

1

모든 것을 문자열로 취급하고 유형을 s으로 지정하십시오. mysql 서버는 쿼리를 처리 할 때 문자열을 실제 열의 실제 데이터 유형으로 자동 변환합니다. set int_col = '32'과 같은 것을 쓰면 set int_col = 32으로 처리됩니다.

숫자 데이터가 2 진수로 전송되지 않으므로 약간의 오버 헤드가 있습니다. 서버가이를 파싱해야합니다. 하지만 INSERT 나 UPDATE 문을 많이 사용하지 않는다면 무시할 수있을 것이다.

관련 문제