[OT] Idea to get all columns from multiple tables in DB
Paolo Invernizzi
paolo.invernizzi at gmail.com
Thu Jan 9 15:36:00 UTC 2020
On Wednesday, 8 January 2020 at 23:01:14 UTC, Steven
Schveighoffer wrote:
> In my project, I only do generation of SQL for updating or
> inserting rows. For fetching elements, I write the SQL (by hand
> or through a sql building system I wrote) and then use the
> byItem serializer to get the records.
We also are writing SQL statements by hand, but I've found that's
really nice to have a compile time check against the current db
schemas. For example, actually I can do:
---
string stat = public!`select recording_id from recordings where
wrongcolname < 10`;
~/dlang/dmd-2.089.0/osx/bin/dmd -i -Isrc -g -unittest -debug -c
-o- src/test.d
/Users/pinver/dlang/dmd-2.089.0/osx/bin/../../src/phobos/std/exception.d(515): Error: uncaught CTFE exception object.Error("column 'wrongcolname' does not exist: 'select recording_id from recordings where wrongcolname < 10'")
src/bkn/sql/semantic.d(75): called from here: <bigsnip>
---
The struct representing the schema is created reading and
processing a SQL file with the schema dump, dumping it once to a
D module, but can be done also at compile time.
That's pretty nice also using an IDE, for example I've configured
VSCode to compile-on-save and I've cool red underlines under the
wrong sql statements.
The semantic pass is really basic right now, but I've plan to
expand it.
More information about the Digitalmars-d
mailing list