# TINYTEXT

## Syntax

```sql
TINYTEXT [CHARACTER SET charset_name] [COLLATE collation_name]
```

## Description

A [TEXT](text) column with a maximum length of 255 (`2⁸ - 1`) characters. The effective maximum length is less if the value contains multi-byte characters. Each `TINYTEXT` value is stored using a one-byte length prefix that indicates the number of bytes in the value.

## EXAMPLES

### TINYTEXT

Example of `TINYTEXT`:

```sql
CREATE TABLE tinytext_example (
   description VARCHAR(20),
   example TINYTEXT
) DEFAULT CHARSET=latin1; -- One byte per char makes the examples clearer
```

```sql
INSERT INTO tinytext_example VALUES
   ('Normal foo', 'foo'),
   ('Trailing spaces foo', 'foo      '),
   ('NULLed', NULL),
   ('Empty', ''),
   ('Maximum', RPAD('', 255, 'x'));
```

```sql
SELECT description, LENGTH(example) AS length FROM tinytext_example;
```

```sql
+---------------------+--------+
| description         | length |
+---------------------+--------+
| Normal foo          |      3 |
| Trailing spaces foo |      9 |
| NULLed              |   NULL |
| Empty               |      0 |
| Maximum             |    255 |
+---------------------+--------+
```

### Data too Long

When `SQL_MODE` is strict (the default) a value is considered "too long" when its length exceeds the size of the data type, and an error is generated.

Example of data too long behavior for `TINYTEXT`:

```sql
TRUNCATE tinytext_example;

INSERT INTO tinytext_example VALUES
   ('Overflow', RPAD('', 256, 'x'));
```

```sql
ERROR 1406 (22001): Data too long for column 'example' at row 1
```

## See Also

* [TEXT](text)
* [BLOB and TEXT Data Types](blob-and-text-data-types)
* [Data Type Storage Requirements](../data-type-storage-requirements)

<sub>_This page is licensed: GPLv2, originally from_</sub> [<sub>_fill\_help\_tables.sql_</sub>](https://github.com/MariaDB/server/blob/main/scripts/fill_help_tables.sql)

{% @marketo/form formId="4316" %}
