feat: bind named SQL parameters
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- cpp, react-native, sqlite
- Bereich
- databases, mobile-dev
Rechercherichtung
Start by tracing the existing positional binding path for ordinary queries, prepared statements, and batch commands, including the shared native binding and error handling. Review the related issues for context, then identify the sync and async entry points and platform-specific paths. Done means named and positional bindings coexist across iOS and Android with the specified placeholder, missing-value, error, reuse, and batch behavior covered.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Query parameters are currently positional arrays. SQL that uses named placeholders must be mapped to positions by callers, which complicates reusable queries and adapters for other SQLite runtimes. Issue #62 asked for named bindings alongside the existing positional API.
Accept a record of names to SQLite values for ordinary queries, prepared statements, and batch commands while retaining positional arrays. Resolve each name with SQLite's parameter-index API and reuse the shared native binding and error handling. Specify the accepted key format for :name, @name, $name, and numbered placeholders; reject unknown keys and document how missing values behave. Do not log parameter values in errors.
Cover repeated named placeholders, mixed placeholder styles, NULL and undefined, BLOBs, sync and async calls, prepared-statement reuse, and batches on iOS and Android. Keep this separate from array-shaped result rows; the two API changes solve different problems.
Related: #62 and #382. The Node test-mock proposal in #395 already tracks the testing-adapter part of #62.
- Vorherrschende Sprache
- C
- Sterne
- 582
- Forks
- 53
- Ø Merge
- 1 T. 17 Std.
- Gemergte PRs (30 T.)
- 10
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus margelo/react-native-nitro-sqlite
-
area:api area:runtime enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 28/100
margelo/react-native-nitro-sqlite#401 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:api area:runtime enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
margelo/react-native-nitro-sqlite#400 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:api area:runtime enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 28/100
margelo/react-native-nitro-sqlite#399 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:api area:runtime enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
margelo/react-native-nitro-sqlite#398 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:api area:runtime enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 48/100
margelo/react-native-nitro-sqlite#397 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in margelo/react-native-nitro-sqlite
Ähnliche Issues
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
jniebuhr/gaggimate#1009 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
Bug :bug:
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
sonic-net/sonic-buildimage#30563 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
llvm/offload-test-suite#1698 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug genc
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag