Skip to content

Commit 16c447e

Browse files
Fix issue with zero being treated as NULL
1 parent 07e10c9 commit 16c447e

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

src/utilities.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ export function prepareSql(sql: string, ...params: (SQLiteCloudDataTypes | SQLit
6767
sqlParameter = params[index - 1] as SQLiteCloudDataTypes
6868
}
6969

70-
return sqlParameter ? escapeSqlParameter(sqlParameter) : 'NULL'
70+
return sqlParameter !== null && sqlParameter !== undefined ? escapeSqlParameter(sqlParameter) : 'NULL'
7171
})
7272

7373
// replace $named or :named parameters passed as an object

test/utilities.test.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,12 @@ describe('prepareSql', () => {
8383
const sql = prepareSql('SELECT * FROM users WHERE first = $first AND last = $last', { $first: 'John', $last: 'Doe' })
8484
expect(sql).toBe("SELECT * FROM users WHERE first = 'John' AND last = 'Doe'")
8585
})
86+
87+
it('should treat 0 as zero and not null', () => {
88+
const zero: number = 0
89+
const sql = prepareSql("SELECT ? AS 'number'", zero)
90+
expect(sql).toBe("SELECT 0 AS 'number'")
91+
})
8692
})
8793

8894
describe('parseConnectionString', () => {

0 commit comments

Comments
 (0)