Skip to content

Commit d857ab8

Browse files
committed
Add support for using a string/buffer as the source for a CLOB/BLOB buffer.
1 parent 0e523bb commit d857ab8

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/njsConnection.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -957,7 +957,8 @@ bool njsConnection::ProcessScalarBindValue(Local<Value> value,
957957

958958
// value is a string, variable type should be a string
959959
} else if (value->IsString()) {
960-
bindOk = (var->varTypeNum == DPI_ORACLE_TYPE_VARCHAR);
960+
bindOk = (var->varTypeNum == DPI_ORACLE_TYPE_VARCHAR ||
961+
var->varTypeNum == DPI_ORACLE_TYPE_CLOB);
961962
if (bindOk) {
962963
v8::String::Utf8Value utf8str(value);
963964
if (utf8str.length() == 0)
@@ -1001,7 +1002,8 @@ bool njsConnection::ProcessScalarBindValue(Local<Value> value,
10011002

10021003
// value is a buffer
10031004
} else if (Buffer::HasInstance(value)) {
1004-
bindOk = (var->varTypeNum == DPI_ORACLE_TYPE_RAW);
1005+
bindOk = (var->varTypeNum == DPI_ORACLE_TYPE_RAW ||
1006+
var->varTypeNum == DPI_ORACLE_TYPE_BLOB);
10051007
if (bindOk) {
10061008
Local<Object> obj = value->ToObject();
10071009
if (dpiVar_setFromBytes(var->dpiVarHandle, pos, Buffer::Data(obj),

0 commit comments

Comments
 (0)