2013-08-16 9 views
0

예를 들어 phpmyadmin에게 MySQL이 전화 번호 앞에 처음 0 개를 허용하도록하려면 어떻게해야합니까? (아니 제로 필) 처음 0 개가 사라 집니까?

  • 나는 그것의 앞에 0을 넣어하려고

    이 (phpMyAdmin에있는)가 자동으로 제거합니다.
  • 숫자 앞에 지정된 0으로 양식 번호를 제출하면 양식 번호가 추가되지 않습니다.

해결 또는 뭔가가 있나요? 단지 mysql을 저장하는 정수의

+2

테이블의 열 유형은 무엇입니까? – andrewsi

+0

문자열 형식이 아닌 정수 형식을 사용하고 있거나 형식이 꺼져있을 수 있습니다. – jrafferty

+0

열 유형이 정수 – TreeID

답변

8

INT 데이터 타입. 프로그래밍 언어의 정수 데이터 유형에서 예상 하듯이 데이터베이스 엔진은 앞에 오는 0을 자르고 소수점을 반올림하여 전화 번호 저장에 적합하지 않게 만듭니다. 이 데이터 유형 VARCHAR(max_length)을 사용하지 않다면

전화 번호의 자릿수가 항상 동일한 경우

대신 데이터 유형 CHAR(length)를 사용하거나. 정수 값이 아닌 정확한 값을 저장합니다.

0

또는 'int'형식으로 PHONE을 그대로두고 선택하면 선행 0을 추가 할 수 있습니다. 이처럼

:

select right('0000000000'+convert(varchar(10), PHONE), 10) 

- 전화 번호는 10 개 이상의 숫자가있는 경우, 당신은 그에 따라 조정

1

, 0 앞에 가지고 VARCHAR 또는 CHAR 데이터를 사용할 수있는 번호를 저장 유형. 전화 번호, 우편 번호, 제품 SKU는 항상 숫자가 아닌 변수 유형을 사용해야하는 주요 예입니다.

관련 문제