~/talk

Persisting C++ Classes in Relational Databases with ODB

Talkat CppCon 2014 · on Monday, 2014-09-08· at 15:15· Euler· [databases]
links:none on file
slides:none on file

A working C++ ORM is demonstrated: ODB generates mapping code from C++ class declarations via a GCC plugin, targets SQLite PostgreSQL MySQL MS SQL Server Oracle, and uses prepared statements with cached connections for performance. Examples show transactional persist load update delete, Boost and Qt profiles, smart pointers and containers, and a small bug-tracker built and runnable. Schema evolution uses an XML change log and pre and post migration scripts with embedded data-migration lambdas. A static SQLite hello world with query support is about 500 kilobytes.

AI-written summary · about

  1. 0:00Intro
  2. 0:19ODB, an ORM for C++
  3. 1:26Object Relational Mapping
  4. 2:46Manual Schema Evolution
  5. 9:46Databases
  6. 10:39Mobile & Embedded
  7. 12:21Performance
  8. 12:38License
  9. 13:54C++ Support
  10. 15:31Persistent Class
  11. 18:07Workflow
  12. 19:21ODB Compiler
  13. 22:11Custom Schema
  14. 23:22Transactions
  15. 26:03Loading Persistent Objects
  16. 28:27Querying the Database
  17. 30:06Deleting Persistent Objects
  18. 31:12Profiles
  19. 32:21Adding Timestamps
  20. 32:34Boost Profile
  21. 33:30Qt Profile
  22. 34:02Containers
  23. 35:21Composite Value Types
  24. 37:06Adding User Object
  25. 40:29Relationships in Queries
  26. 42:37Static Multi-Database Support
  27. 43:39Dynamic Multi-Database Support
  28. 44:10Dynamic Loading
  29. 44:39Database Schema Evolution
  30. 47:41Object Model Version
  31. 49:53Schema Migration
  32. 55:45Data Migration
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.