From db535af5b6b1838c31f9caa5be663df11d177241 Mon Sep 17 00:00:00 2001 From: 2881099 <2881099@qq.com> Date: Tue, 24 May 2022 11:51:04 +0800 Subject: [PATCH] =?UTF-8?q?-=20=E4=BF=AE=E5=A4=8D=20Oracle=20clob=20?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E5=8C=96=E7=B1=BB=E5=9E=8B=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E9=97=AE=E9=A2=98=EF=BC=9B#1116?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Providers/FreeSql.Provider.Odbc/Oracle/OdbcOracleUtils.cs | 4 ++-- Providers/FreeSql.Provider.Oracle/OracleUtils.cs | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Providers/FreeSql.Provider.Odbc/Oracle/OdbcOracleUtils.cs b/Providers/FreeSql.Provider.Odbc/Oracle/OdbcOracleUtils.cs index d8859e15..a7920b0e 100644 --- a/Providers/FreeSql.Provider.Odbc/Oracle/OdbcOracleUtils.cs +++ b/Providers/FreeSql.Provider.Odbc/Oracle/OdbcOracleUtils.cs @@ -113,7 +113,7 @@ namespace FreeSql.Odbc.Oracle if (valueString != null) { if (valueString.Length < 4000) return string.Concat("'", valueString.Replace("'", "''"), "'"); - var pam = AppendParamter(specialParams, $"p_{specialParams?.Count}{specialParamFlag}", null, type, value); + var pam = AppendParamter(specialParams, $"p_{specialParams?.Count}{specialParamFlag}", col, type, value); return pam.ParameterName; } } @@ -123,7 +123,7 @@ namespace FreeSql.Odbc.Oracle if (valueBytes != null) { if (valueBytes.Length < 4000) return $"hextoraw('{CommonUtils.BytesSqlRaw(valueBytes)}')"; - var pam = AppendParamter(specialParams, $"p_{specialParams?.Count}{specialParamFlag}", null, type, value); + var pam = AppendParamter(specialParams, $"p_{specialParams?.Count}{specialParamFlag}", col, type, value); return pam.ParameterName; } } diff --git a/Providers/FreeSql.Provider.Oracle/OracleUtils.cs b/Providers/FreeSql.Provider.Oracle/OracleUtils.cs index 3e286782..53cccbe9 100644 --- a/Providers/FreeSql.Provider.Oracle/OracleUtils.cs +++ b/Providers/FreeSql.Provider.Oracle/OracleUtils.cs @@ -47,6 +47,9 @@ namespace FreeSql.Oracle case OracleDbType.NClob: ret = new OracleParameter { ParameterName = QuoteParamterName(parameterName), OracleDbType = dbtype2, Value = value }; break; + case OracleDbType.Blob: + ret = new OracleParameter { ParameterName = QuoteParamterName(parameterName), OracleDbType = dbtype2, Value = value }; + break; } } _params?.Add(ret); @@ -113,7 +116,7 @@ namespace FreeSql.Oracle if (valueString != null) { if (valueString.Length < 4000) return string.Concat("'", valueString.Replace("'", "''"), "'"); - var pam = AppendParamter(specialParams, $"p_{specialParams?.Count}{specialParamFlag}", null, type, value); + var pam = AppendParamter(specialParams, $"p_{specialParams?.Count}{specialParamFlag}", col, type, value); return pam.ParameterName; } } @@ -123,7 +126,7 @@ namespace FreeSql.Oracle if (valueBytes != null) { if (valueBytes.Length < 4000) return $"hextoraw('{CommonUtils.BytesSqlRaw(valueBytes)}')"; - var pam = AppendParamter(specialParams, $"p_{specialParams?.Count}{specialParamFlag}", null, type, value); + var pam = AppendParamter(specialParams, $"p_{specialParams?.Count}{specialParamFlag}", col, type, value); return pam.ParameterName; } }