E021-02, “CHARACTER VARYING data type (including all its spellings)”


BigQueryDb2 (LUW)DerbyH2MariaDBMySQLOracle DBPostgreSQLSQL ServerSQLite2005200720092011201320152017201920212023✓ 3.5.7 - 3.50.0a✓ 2008R2 - 2022ac✓ 8.3 - 17a⚡ 11gR1 - 23.9ab✓ 5.0 - 9.3.0a✓ 5.1 - 12.0.2a✓ 2.0.202 - 2.3.232d⚠ 1.4.192 - 1.4.200ad✓ 10.15.1.3 - 10.17.1.0✓ 9.7 - 12.1.2⊘ 2.0a
  1. Non-standard alternatives available
  2. ⚡Empty strings become null
  3. Very low implementation-defined limit: 1
  4. Without the char varying synonym

The variable-length character string type of SQL is character varying but the shorter synonyms char varying and most importantly varchar are more commonly used.

CREATE TABLE … (
   email VARCHAR(320)
)

The varchar type can be parameterized to set a maximum length, like 320 in the example. Note that the unit are characters, not bytes.✓✗ In absence of the length attribute, the maximum length is implementation-defined (ID069), which is sometimes just a single character.

As the type varchar stores characters, rather than bytes, the character set and collate clauses may be specified.

Non-Standard Alternatives

BigQuery 2025-09-02Db2 (LUW) 12.1.2Derby 10.17.1.0H2 2.3.232MariaDB 12.0.2MySQL 9.3.0Oracle DB 23.9PostgreSQL 17SQL Server 2022SQLite 3.50.0stringvarchar2longtexttinytextmediumtextlongtext
Supplementary Features
Mandatory Features
Optional Features
Implementation-defined Elements

Normative References

The SQL types character varying, char varying and char are defined in ISO/IEC 9075-2:2023 as mandatory feature E021-02, “CHARACTER VARYING data type (including all its spellings)”. They were already available in SQL-92 (entry level).

You can’t catch up on 20 years of SQL evolution in one day. Subscribe the newsletter via E-Mail, Bluesky or RSS to gradually catch up and to keep modern-⁠sql.com on your radar.

About the Author

Photo of Markus Winand

Markus Winand provides insights into SQL and shows how different systems support it at modern-sql.com. Previously he made use-the-index-luke.com, which is still actively maintained. Markus can be hired as trainer, speaker and consultant via winand.at.

Buy the Book

Cover of “SQL Performance Explained”: Squirrel running on grass

The essence of SQL tuning in 200 pages

Buy now!
(paperback and/or PDF)

Paperback also available at Amazon.com.

Hire Markus

Markus offers SQL training and consulting for developers working at companies of all sizes.
Learn more »

Connect with Markus Winand

Subscribe mailinglistsSubscribe the RSS feedMarkus Winand on LinkedInMarkus Winand on XINGMarkus Winand on TwitterMarkus Winand on Bluesky
Copyright 2015-2025 Markus Winand. All righs reserved.
Legal | Contact | NO WARRANTY | Trademarks | Privacy and GDPR