Skip to content

Conversation

eddietejeda
Copy link

Add DuckDB adapter supporting modules

  • Add quoting.rb for proper SQL quoting and escaping
  • Add explain_pretty_printer.rb for formatted EXPLAIN output
  • Add tasks.rb for Rails database tasks (db:create, db:drop, etc.)

- Update database_statements.rb transaction support and query execution, default to using @raw_connection, and add support for binding params
- Add schema_statements.rb DDL operations (CREATE/ALTER/DROP table support)
- BREAKING: Remove legacy Railtie approach and use modern ActiveRecord::ConnectionAdapters.register approach for registering gem
- Add YARD documentation to make it clear which files were implementing necessary methods
- Default to writing DuckDB file to disk
- Validated lifecycle of creating and deploying databases and tested bundle exec rails db:drop db:create db:migrate db:seed db:reset
- Use DuckDB's information_schema for accessing meta data
- Default primary ids as bigints
- Add quoting.rb for proper SQL quoting and escaping
- Add explain_pretty_printer.rb for formatted EXPLAIN output
- Add tasks.rb for Rails database tasks (db:create, db:drop, etc.)
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