문자열 – PostgreSQL : 차이점은 텍스트와 varchar (character varying)

텍스트 데이터 형식과 character varying (varchar) 데이터 형식의 차이점은 무엇입니까?

the documentation에 따르면

If character varying is used without length specifier, the type accepts strings of any size. The latter is a PostgreSQL extension.

In addition, PostgreSQL provides the text type, which stores strings of any length. Although the type text is not in the SQL standard, several other SQL database management systems have it as well.

차이점은 무엇입니까?

우수 답변
차이점은 없습니다. 두포는 모두 varlena입니다 (variable length array).

Depesz에서이 기사 확인 : http://www.depesz.com/index.php/2010/03/02/charx-vs-varcharx-vs-varchar-vs-text/

몇 가지 주요 사항 :

To sum it all up:

  • char(n) – takes too much space when dealing with values shorter than n, and can lead to subtle errors because of adding trailing
    spaces, plus it is problematic to change the limit
  • varchar(n) – it’s problematic to change the limit in live environment
  • varchar – just like text
  • text – for me a winner – over (n) data types because it lacks their problems, and over varchar – because it has distinct name

이 기사에서는 4 가지 데이터 유형 모두에 대해 삽입 및 선택의 성능이 유사 함을 보여주는 자세한 테스트를 수행합니다. 또한 필요할 때 길이를 제한하는 다른 방법을 자세하게 살펴 봅니다. 함수 기반 제약 조건 또는 도메인은 길이 제한 조건을 즉시 늘릴 수 있다는 이점을 제공하며 문자열 길이 제한 조건을 줄이는 것이 거의 불가능하다는 점에서 depesz는 일반적으로 길이 제한에 대한 최선의 선택이라고 결론을 내립니다.

원본 텍스트를 나타내십시오:문자열 – PostgreSQL : 차이점은 텍스트와 varchar (character varying) - 코드 로그