On Thu, Jun 4, 2015 at 1:54 AM, Dominique Devienne <ddevienne at gmail.com> wrote: > On Thu, Jun 4, 2015 at 10:20 AM, Christopher Vance <cjsvance at gmail.com> > wrote: >> If you really want your own types, you could always bundle with ASN.1 and >> store the result as a blob. > > Or Protobuf, or ... But you're back to option 1, you must store somewhere > that knowledge, and it's an app-convention, SQL and SQLite don't cooperate. > > That's far from first-class UDTs.
Who else other than your app is going to read the data directly, though? Many other SQL systems end up becoming the de facto integration point between disparate backend and frontend systems. So you end up growing additional features to let everyone play in the database using the same set of conventions put in place by the DBA. That doesn't make it a really strong design for the overall system, though, even if it is convenient and incremental to build. I don't think the argument is as strong for things like this in SQLite, simply because often enough SQLite isn't really in a position to leverage any of it any better than your app code can, and just delegating it to your app code works out pretty well for SQLite in terms of support burden and getting bogged down by complexity. -scott