mySQL 에서 필드의 크기를 구해오려구 하는데
몇가지 문제가 있네염...
실제 필드의 구조
+------------+-------------+
| Field | Type |
+------------+-------------+
| msg_abbr | varchar(4) |
| field_id | varchar(20) |
| field_name | varchar(40) |
| field_seq | int(11) |
| data_type | char(1) |
| field_len | int(11) |
| remarks | varchar(80) |
+------------+-------------+
아래 결과는 Fields.Count 만큼
Fields[i].FieldName
Fields[i].DisplayWidth
Fields[i].Size
Fields[i].DataSize
의 값을 구해서 보여준 것입니다.
보다시피 위의 레이아웃과 실제 구해온
값이 틀립니다.
분석결과
FieldName 은 잘 들어오구여
DisplayWidth 는 현재 저장된 데이터 중에서의 최대 길이가 들어오구여
Size 는 DisplayWidth와 마찬가지 이구여
DataSize 는 Size 와 DisplayWidth 보다 1 큰 값이 들어오네여
mySQL 의 테이블의 필드의 크기가 정확히
넘어오게 하는 방법 아시는 분 답변 부탁드려요
BigInt 와 Int 형의 구별도 아시는 분 알려주세여...
테스트 결과 BigInt와 Int형이 같은 크기로 나오네염...ㅠ.ㅠ
FieldName : msg_abbr
DisplayWidth : 4
Size : 4
DataSize : 5
FieldName : field_id
DisplayWidth : 17
Size : 17
DataSize : 18
FieldName : field_name
DisplayWidth : 32
Size : 32
DataSize : 33
FieldName : field_seq
DisplayWidth : 10
Size : 0
DataSize : 4
FieldName : data_type
DisplayWidth : 1
Size : 1
DataSize : 2
FieldName : field_len
DisplayWidth : 10
Size : 0
DataSize : 4
FieldName : remarks
DisplayWidth : 72
Size : 72
DataSize : 73