From 6d6d85312d25e0e4c1103836dd0c771d75990638 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Sat, 17 Dec 2022 12:44:08 +0800 Subject: [PATCH] Update Oracle --- Src/Asp.Net/OracleTest/OracleTest.csproj | 1 + Src/Asp.Net/OracleTest/UnitTest/Main.cs | 1 + Src/Asp.Net/OracleTest/UnitTest/UInsert3.cs | 57 +++++++++++++++++++ .../Oracle/SqlBuilder/OracleInsertBuilder.cs | 4 +- 4 files changed, 61 insertions(+), 2 deletions(-) create mode 100644 Src/Asp.Net/OracleTest/UnitTest/UInsert3.cs diff --git a/Src/Asp.Net/OracleTest/OracleTest.csproj b/Src/Asp.Net/OracleTest/OracleTest.csproj index 91c423b17..6347f233d 100644 --- a/Src/Asp.Net/OracleTest/OracleTest.csproj +++ b/Src/Asp.Net/OracleTest/OracleTest.csproj @@ -80,6 +80,7 @@ + diff --git a/Src/Asp.Net/OracleTest/UnitTest/Main.cs b/Src/Asp.Net/OracleTest/UnitTest/Main.cs index 7c8fcb236..4b1e3e720 100644 --- a/Src/Asp.Net/OracleTest/UnitTest/Main.cs +++ b/Src/Asp.Net/OracleTest/UnitTest/Main.cs @@ -34,6 +34,7 @@ namespace OrmTest } public static void Init() { + UInsert3.Init(); Unit001.Init(); UnitStorageableBool.Init(); UCustom03.Init(); diff --git a/Src/Asp.Net/OracleTest/UnitTest/UInsert3.cs b/Src/Asp.Net/OracleTest/UnitTest/UInsert3.cs new file mode 100644 index 000000000..0ad7d6b31 --- /dev/null +++ b/Src/Asp.Net/OracleTest/UnitTest/UInsert3.cs @@ -0,0 +1,57 @@ +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Data.SqlTypes; +using System.Linq; +using System.Security.Principal; +using System.Text; +using System.Threading.Tasks; + +namespace OrmTest +{ + internal class UInsert3 + { + public static void Init() + { + var db = NewUnitTest.Db; + db.Insertable(new Order() { Name = "a" }).ExecuteCommand(); + + db.Insertable(new List() { + new Order() { Name = "a" }, + new Order() { Name = "a" } + }).ExecuteCommand(); + + db.Insertable(new ORDER() { Name = "a" }).ExecuteCommand(); + } + + public class Order + { + [SugarColumn(IsPrimaryKey = true,OracleSequenceName = "Seq_Id")] + public int Id { get; set; } + /// + /// 姓名 + /// + public string Name { get; set; } + public decimal Price { get; set; } + [SugarColumn(InsertServerTime =true)] + public DateTime CreateTime { get; set; } + [SugarColumn(IsNullable = true)] + public int CustomId { get; set; } + } + + public class ORDER + { + [SugarColumn(IsPrimaryKey = true, OracleSequenceName = "Seq_Id")] + public int Id { get; set; } + /// + /// 姓名 + /// + public string Name { get; set; } + public decimal Price { get; set; } + [SugarColumn(InsertSql = "sysdate")] + public DateTime CreateTime { get; set; } + [SugarColumn(IsNullable = true)] + public int CustomId { get; set; } + } + } +} diff --git a/Src/Asp.Net/SqlSugar/Realization/Oracle/SqlBuilder/OracleInsertBuilder.cs b/Src/Asp.Net/SqlSugar/Realization/Oracle/SqlBuilder/OracleInsertBuilder.cs index 4541dcd4c..2945e7510 100644 --- a/Src/Asp.Net/SqlSugar/Realization/Oracle/SqlBuilder/OracleInsertBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Realization/Oracle/SqlBuilder/OracleInsertBuilder.cs @@ -38,7 +38,7 @@ namespace SqlSugar string columnsString = string.Join(",", groupList.First().Select(it => Builder.GetTranslationColumnName(it.DbColumnName))); if (isSingle&&this.EntityInfo.EntityName!= "Dictionary`2") { - string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it => Builder.SqlParameterKeyWord + it.DbColumnName)); + string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it =>base.GetDbColumn(it, Builder.SqlParameterKeyWord + it.DbColumnName))); if (identities.HasValue()) { columnsString = columnsString.TrimEnd(',') + "," + string.Join(",", identities.Select(it => Builder.GetTranslationColumnName(it.DbColumnName))); @@ -99,7 +99,7 @@ namespace SqlSugar batchInsetrSql.Append("("); - insertColumns = string.Join(",", item.Select(it => FormatValue(it.Value, it.PropertyName))); + insertColumns = string.Join(",", item.Select(it =>GetDbColumn(it, FormatValue(it.Value, it.PropertyName)))); batchInsetrSql.Append(insertColumns); if (identities.HasValue()) {