margelo / margelo/react-native-nitro-sqlite

Cannot get metaData from executeAsync

Open
#194 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
565
Forks
53
Avg merge
1d 21h
Merged PRs (30d)
18

Description

Issue with HybridNitroSQLite.executeAsync metadata

Environment

  • react-native-nitro-sqlite: ^9.1.10
  • React Native: 0.79.5
  • React: 19.0.0
  • Platform: iOS and Android
  • Device: iPhone and Android emulator

Issue Description

When using HybridNitroSQLite.executeAsync() directly, the metadata in the result only contains information about the first column, regardless of how many columns are in the query.

For example, when executing:

const result = await HybridNitroSQLite.executeAsync(
  'persistent.db',
  'SELECT environment, region, isRegionChecked, showWelcomeMessage FROM AppSettings',
  []
);# Issue with HybridNitroSQLite.executeAsync metadata

## Environment
- react-native-nitro-sqlite: ^9.1.10
- React Native: 0.79.5
- React: 19.0.0

## Issue Description
When using `HybridNitroSQLite.executeAsync()` directly, the metadata only contains the first column:

```typescript
const result = await HybridNitroSQLite.executeAsync(
  'persistent.db',
  'SELECT environment, region, isRegionChecked, showWelcomeMessage FROM AppSettings',
  []
);

The metadata looks like:

{
  "": {
    index: 0,
    name: "environment",
    type: 0
  }
}

Expected: Metadata should include all columns in the query result.

Question

Is this a known limitation? How can I get complete column metadata when using the direct executeAsync() method?
Why db.executeAsync does not return metaData ?

console.log(result.metadata);

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the HybridNitroSQLite.executeAsync entry point and trace how query result metadata is assembled on iOS and Android. Reproduce the SELECT with multiple columns, then inspect the native metadata handling. Done means the returned metadata includes every selected column consistently on both platforms.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native, sqlite, typescript
Domain
databases, mobile-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.