False and 0 Values Not Inserted in PostgreSQL via Wix Velo bulkInsert
I’m using Wix Velo to insert data into a PostgreSQL database. Everything works except for the integer 0 and the boolean false. These values are not stored correctly in the table and are instead left empty. Here’s the situation:
PostgreSQL Table Structure:
CREATE TABLE jouw_tabel1 (
"_id" SERIAL PRIMARY KEY,
"_createdDate" TIMESTAMP NOT NULL,
"_updatedDate" TIMESTAMP NOT NULL,
"_owner" VARCHAR(255),
"numeric_value" INTEGER NOT NULL,
"is_active" BOOLEAN NOT NULL
);
Wix Velo Code for Insert:
const records = [
{ extra_info: "Extra info 1", numeric_value: 0, is_active: true },
{ extra_info: "Extra info 2", numeric_value: 0, is_active: false },
{ extra_info: "Extra info 3", numeric_value: 1, is_active: false }
];
wixData.bulkInsert("wix_velo_gcp_connection/jouw_tabel1", records)
.then((result) => {
console.log(`Successfully inserted ${result.inserted}`);
})
.catch((err) => {
console.error("Error:", err);
});
What Happens:
- Non-zero integers and true values are inserted correctly.
- numeric_value: 0 and is_active: false are not stored and result in empty fields in the database.
What I Know:
- If I manually insert 0 or false via a SQL prompt (outside of Wix), it works as expected.
- This suggests the issue likely lies with how Wix Velo processes and sends these values to PostgreSQL.
Troubleshooting Steps Taken:
- Verified table structure with SELECT column_name, data_type, is_nullable FROM information_schema.columns.
- Ran queries to fetch records with 0 or false values (e.g., SELECT * FROM jouw_tabel1 WHERE numeric_value = 0;). These return no results.
- Wix does not show errors during insertion, and there are no obvious logs in PostgreSQL indicating a problem.
I’m using PostgreSQL 16.6. Is there something specific in Wix Velo that could cause this behavior? How can I debug or fix this issue?