Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support SQLite #2

Open
4 tasks
dzikoysk opened this issue Jan 15, 2023 · 1 comment
Open
4 tasks

Support SQLite #2

dzikoysk opened this issue Jan 15, 2023 · 1 comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request investigation

Comments

@dzikoysk
Copy link
Owner

dzikoysk commented Jan 15, 2023

SQLite is relatively bad solution for a database that will be updated in the future due to:

  • Lack of quite a lot of crucial types
  • Enums are not supported
  • RETYPE operation would be limited to a given group of type affinities: https://www.sqlite.org/datatype3.html
  • Constraints update require redeclaration of the whole table & full copy of its content
    • Currently, Sqiffy uses a workaround with a modification of table scheme stored in sqlite_master. (experimental)
  • Inserts does not return autogenerated keys, so it requires additional select in the transaction to properly obtain last inserted row record

Todo:

  • Provide a strict mode that forbids to use features that are not directly supported by this db
    • Enums
    • Constraint updates
    • Column type changes
@dzikoysk dzikoysk added the question Further information is requested label Jan 15, 2023
dzikoysk added a commit that referenced this issue Jul 13, 2023
@dzikoysk dzikoysk added documentation Improvements or additions to documentation enhancement New feature or request investigation and removed question Further information is requested labels Jul 13, 2023
@dzikoysk
Copy link
Owner Author

dzikoysk commented Jul 13, 2023

Experimental SQLite support should be available in 1.0.0-alpha.25. SQLite does not support schema updates directly, so I've backported them through changes to sqlite_master - the stability of this solution is unknown.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request investigation
Projects
None yet
Development

No branches or pull requests

1 participant