View Single Post
Old 08-17-2022, 11:12 AM   #10
inhaledesign
Junior Member
inhaledesign began at the beginning.
 
Posts: 5
Karma: 10
Join Date: Aug 2022
Device: Onyx Boox Nova 3
Quote:
Originally Posted by kovidgoyal View Post
Nope, calibre uses the sqlite library, not the program. And there is no sqlite *standard*. And even if there was one, you cannot use a standard to do anything.

And finally, try this

CREATE TABLE authors ( id INTEGER PRIMARY KEY, name OH_MAN_WHAT_A_TYPE);

I highly doubt OH_MAN_WHAT_A_TYPE is supported by whatever sqlite *standard* you think you have found. And yet this table will succeed.
Thank you for providing a relevant example this time.

Again, the standard I was referencing is the official SQLite documentation. I provided it as a source so their could be mutual context, which is helpful when having a constructive conversation.

According to the documentation, SQLite attempts to infer the type affinity from the type provided, so to say that the provided type is *merely* documentation is incorrect. It has practical consequences for how the data is stored, and this isn't irrelevant. I'm currently wrestling with issues related to this feature of SQLite and the Calibre schemas. While SQLite allows you to use whatever type you want in order to play nice with SQL broadly, at no point does it *recommend* using whatever types you want. If you're going to use SQLite to create a database from scratch, it'd be better to stick strictly to the defined types (again, the supported types are clearly stated in the link I provided).

Anyways, I have the answer to my question (through my own research), and this conversation has not at all been constructive.
inhaledesign is offline   Reply With Quote