aboutsummaryrefslogtreecommitdiff
path: root/doc/FAQ
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2000-11-30 18:46:42 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2000-11-30 18:46:42 +0000
commitb73ecebf05041ab8643d6a4808ab807fb44f00b0 (patch)
treec45529e7424247e2e5c35057832d165ea6cdae64 /doc/FAQ
parent1f5cc8c78aa3e600f3857f39e1b92bb9d019e68b (diff)
downloadpostgresql-b73ecebf05041ab8643d6a4808ab807fb44f00b0.tar.gz
postgresql-b73ecebf05041ab8643d6a4808ab807fb44f00b0.zip
Remove obsolete claim that char(n) is more efficient than other text types.
Diffstat (limited to 'doc/FAQ')
-rw-r--r--doc/FAQ14
1 files changed, 6 insertions, 8 deletions
diff --git a/doc/FAQ b/doc/FAQ
index 403808f7bff..11a4783ab87 100644
--- a/doc/FAQ
+++ b/doc/FAQ
@@ -811,19 +811,17 @@ Type Internal Name Notes
"char" char 1 character
CHAR(#) bpchar blank padded to the specified fixed length
VARCHAR(#) varchar size specifies maximum length, no padding
-TEXT text length limited only by maximum row length
-BYTEA bytea variable-length array of bytes
+TEXT text no specific upper limit on length
+BYTEA bytea variable-length byte array (null-safe)
You will see the internal name when examining system catalogs and in
some error messages.
The last four types above are "varlena" types (i.e., the first four
- bytes are the length, followed by the data). char(#) allocates the
- maximum number of bytes no matter how much data is stored in the
- field. text, varchar(#), and bytea all have variable length on the
- disk, and because of this, there is a small performance penalty for
- using them. Specifically, the penalty is for access to all columns
- after the first column of this type.
+ bytes on disk are the length, followed by the data). Thus the actual
+ space used is slightly greater than the declared size. However, these
+ data types are also subject to compression or being stored out-of-line
+ by TOAST, so the space on disk might also be less than expected.
4.16.1) How do I create a serial/auto-incrementing field?