Skip to content

Support INSERT without INTO keyword - #354

Merged
JanJakes merged 1 commit into
trunkfrom
insert-without-into
Apr 3, 2026
Merged

Support INSERT without INTO keyword#354
JanJakes merged 1 commit into
trunkfrom
insert-without-into

Conversation

@JanJakes

@JanJakes JanJakes commented Apr 3, 2026

Copy link
Copy Markdown
Member

Summary

MySQL supports omitting the INTO keyword in INSERT statements (e.g., INSERT t (id) VALUES (1)), but SQLite requires it. This adds the missing INTO keyword during query translation.

This is a simpler alternative to #343, focusing only on the INTO keyword injection. It also adds tests covering INSERT without INTO across multiple syntaxes: VALUES, SET, SELECT, and their IGNORE variants.

Closes #343. Thanks @wp-fuse for reporting this!

Test plan

  • INSERT t (id, name) VALUES (1, 'a') — VALUES syntax without INTO.
  • INSERT IGNORE t (id, name) VALUES (1, 'a') — IGNORE without INTO.
  • INSERT t SET id = 2, name = 'b' — SET syntax without INTO.
  • INSERT IGNORE t SET id = 2, name = 'b' — IGNORE + SET without INTO.
  • INSERT t (id, name) SELECT 3, 'c' — SELECT syntax without INTO.
  • INSERT IGNORE t (id, name) SELECT 3, 'c' — IGNORE + SELECT without INTO.
@JanJakes
JanJakes merged commit 11e8548 into trunk Apr 3, 2026
16 checks passed
@JanJakes
JanJakes deleted the insert-without-into branch April 3, 2026 11:05
@JanJakes JanJakes mentioned this pull request Apr 3, 2026
JanJakes added a commit that referenced this pull request Apr 3, 2026
## Release `2.2.22`

Version bump and changelog update for release `2.2.22`.

**Changelog draft:**
* Support INSERT without INTO keyword
([#354](#354))
* Add tests for MySQL row-level locking clauses
([#342](#342))
* Improve automated deploy setup.

**Full changelog:**
v2.2.21...release/v2.2.22

## Next steps

1. **Review** the changes in this pull request.
2. **Push** any additional edits to this branch (`release/v2.2.22`).
3. **Merge** this pull request to complete the release.

Merging will automatically build the plugin ZIP, create a [GitHub
release](https://github.com/WordPress/sqlite-database-integration/releases),
and deploy to
[WordPress.org](https://wordpress.org/plugins/sqlite-database-integration/).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant