From 359557e321a49a63c2984c5272f20637577049ac Mon Sep 17 00:00:00 2001 From: Nybkox Date: Thu, 6 Feb 2025 11:09:14 +0100 Subject: [PATCH] feat: pass dataType to bulk insert value put --- .../src/backend/createBulkInsertStream.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/plugins/dbgate-plugin-cassandra/src/backend/createBulkInsertStream.js b/plugins/dbgate-plugin-cassandra/src/backend/createBulkInsertStream.js index 1952e5938..11eba0427 100644 --- a/plugins/dbgate-plugin-cassandra/src/backend/createBulkInsertStream.js +++ b/plugins/dbgate-plugin-cassandra/src/backend/createBulkInsertStream.js @@ -74,7 +74,16 @@ function createCassandraBulkInsertStream(driver, stream, dbhan, name, options) { dmp.putRaw('uuid()'); dmp.putRaw(', '); } - dmp.putCollection(',', writable.columnNames, (col) => dmp.putValue(row[col]?.toString())); + dmp.putCollection(',', writable.columnNames, (col) => { + const existingColumn = getColumnInfo(writable.structure, col); + const dataType = existingColumn?.dataType; + + if (dataType) { + dmp.putValue(row[col], dataType); + } else { + dmp.putValue(row[col]?.toString()); + } + }); dmp.putRaw(')'); await driver.query(dbhan, dmp.s, { discardResult: true }); }