# MySQL ERROR 1366 (HY000): Incorrect integer value: '' for column 'x' at row 1

**Code:** `1366` · **Category:** MySQL · **Seen on:** MySQL

An empty string or non-numeric text was inserted into an INT column under strict mode.

## Meaning

Forms send '' for empty numeric fields. Strict mode (default since 5.7) rejects it instead of storing 0.

## Common causes

- Empty string for numeric fields
- Non-numeric text
- Old code relying on non-strict MySQL

## Quick fix

1. Convert '' to NULL (or 0) in the application
2. Validate numeric input
3. Don’t disable strict mode

## Detailed fix by platform

### PHP

1. `$qty = $_POST['qty'] === '' ? null : (int) $_POST['qty'];`

## How to diagnose

1. **Value** — What was sent?
2. **Column** — Nullable?

---
Source: [WhatIsMyError](https://whatismyerror.com/errors/mysql/1366-incorrect-integer-value)
