Code for SQLite3 4+

ZeeZide GmbH

    • 5,0 • 1 Bewertung
    • 14,99 €

Screenshots

Beschreibung

“Code for SQLite3” is a little macOS application that accepts either SQLite3 database files or SQL source code, and generates Swift source code for them.

This is done for two main use cases: 1) To bundle and access resource data that is available as a SQLite database. 2) To generate highly efficient database access code, e.g. for caching offline-first data.

The app generates a Swift structure for the database and for each SQL table and view, plus accompanying, highly optimised, code. It can work either with the “Lighter” package or generate dependency free SQLite code.

- Produces very efficient low-level SQLite code that directly binds to SQLite w/o any runtime mapping.
- Can generate dependency free API wrappers that directly use SQLite3 and nothing else.
- Can generates API that uses “Lighter”, a tiny library adding more features.
- Completely type safe, down to the SQLite3 schema! I.e. tables or columns that do not exist in the database, can't be used.
- Rows can be filtered using Swift closures that directly run within SQLite.
- Generates extensive DocC documentation, which includes information on how to use the generated wrappers, the SQL that created an associated table, and more.
- Supports both: SQL tables and views. Views can be used to pre-create named queries (e.g. complex joins or sum selects).
- Can load from both: plain SQL source code and actual binary SQLite3 databases.
- Generates accessors that can follow relationships formed by foreign keys.
- Can synthesize primary (and foreign) keys, even if they are not properly declared in the SQLite database.
- Can generate Codable, Identifiable and Hashable models.
- Can generate Swift 5.5 async/await APIs when used w/ the “Lighter”" library.

Neuheiten

Version 1.0.2

This version fixes a bug when opening SQLite database that have an associated WAL file. Databases in WAL mode should work fine now.

It also integrates a set of Lighter fixes:
- Only generates module accessor when Foundation is allowed (requires `Bundle`).
- Only generate `.module` for SPM packages (not available in Xcode).
- Avoid incorrect quoting of `self`.
- Fixes SQL bug in `user_version` (was triggering a SQL syntax error).
- Supports single column tables/views.
- Uses `execute` in delete/insert/update (was not properly requesting write access to the database).
- Fixes various BLOB UUID issues.
- Fixes an incorrect DocC comment wrt default values.
- Generate default `UUID` for UUID primary keys records.
- Use `Int.min` as a default for integer primary keys records.
- Decouple INTEGER/INT, different meaning in primary key contexts (i.e. only spelled out `INTEGER` is DB generated).
- Avoid naming conflicts in raw API.

Bewertungen und Rezensionen

5,0 von 5
1 Bewertung

1 Bewertung

pual83 ,

Great tool

Thanks for this. Finally a tool that keeps my swift code in sync with the sql definition.
What I like
- Lots of configuration options for the generated code
- The performance advantages compared to GRDB.swift
- The api of the Lighter dependency is easy to use

Just don't make the same mistake like me and switch off the comment generation, they contain valuable examples to get started

App-Datenschutz

Der Entwickler, ZeeZide GmbH, hat darauf hingewiesen, dass die Datenschutzrichtlinien der App den unten stehenden Umgang mit Daten einschließen können. Weitere Informationen findest du in den Datenschutzrichtlinien des Entwicklers.

Keine Daten erfasst

Der Entwickler erfasst keine Daten von dieser App.

Die Datenschutzpraktiken können zum Beispiel je nach den von dir verwendeten Funktionen oder deinem Alter variieren. Weitere Infos

Support

  • Familienfreigabe

    Bis zu sechs Familienmitglieder können diese App bei aktivierter Familienfreigabe nutzen.

Mehr von diesem Entwickler