Search code examples
node.jselectronknex.jselectron-buildernode-sqlite3

.returning() is not supported by sqlite3 and will not have any effect


Recently, I noticed the yellow warning in my console saying,

.returning() is not supported by sqlite3 and will not have any effect.

I'm using the sqlite3 module with knex.js. It didn't put any effect on output but knowing what is it worths a lot. Here are my environment details.

knex v0.19.1
sqlite3 v4.0.9
Node v10.16.9
electron-builder v21.2.0
electron v6.0.2


Solution

  • There is a call to .returning(...) in somewhere in your app. Since you are using sqlite3 dialect that call is just ignored and will not have any effect on returned data.

    For example:

    await knex('table1').insert({ foo: 'bar' }).returning('*');
    

    and

    await knex('table1').insert({ foo: 'bar' });
    

    will return exactly same thing on sqlite dialect.