Skip to content

Support INSERT without INTO keyword#354

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

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

Conversation

@JanJakes
Copy link
Copy Markdown
Member

@JanJakes JanJakes commented Apr 3, 2026

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant