Oracle save queue

This commit is contained in:
sunkaixuan 2023-10-22 23:30:11 +08:00
parent c43cf6296f
commit 85043020b7
4 changed files with 19 additions and 0 deletions

View File

@ -161,6 +161,9 @@ namespace SqlSugar
return item.FieldValue; return item.FieldValue;
} }
} }
public virtual void FormatSaveQueueSql(StringBuilder sqlBuilder)
{
}
#endregion #endregion
#region Common SqlTemplate #region Common SqlTemplate

View File

@ -1563,6 +1563,8 @@ namespace SqlSugar
} }
} }
this.Queues.Clear(); this.Queues.Clear();
var builder = InstanceFactory.GetSqlbuilder(this.Context.CurrentConnectionConfig);
builder.FormatSaveQueueSql(sqlBuilder);
var result = await func(sqlBuilder.ToString(), parsmeters); var result = await func(sqlBuilder.ToString(), parsmeters);
if (isTran) this.Ado.CommitTran(); if (isTran) this.Ado.CommitTran();
return result; return result;
@ -1636,6 +1638,8 @@ namespace SqlSugar
} }
} }
this.Queues.Clear(); this.Queues.Clear();
var builder = InstanceFactory.GetSqlbuilder(this.Context.CurrentConnectionConfig);
builder.FormatSaveQueueSql(sqlBuilder);
var result = func(sqlBuilder.ToString(), parsmeters); var result = func(sqlBuilder.ToString(), parsmeters);
if (isTran) this.Ado.CommitTran(); if (isTran) this.Ado.CommitTran();
return result; return result;

View File

@ -45,5 +45,6 @@ namespace SqlSugar
string GetUnionFomatSql(string sql); string GetUnionFomatSql(string sql);
Type GetNullType(string tableName,string columnName); Type GetNullType(string tableName,string columnName);
string RemoveParentheses(string sql); string RemoveParentheses(string sql);
void FormatSaveQueueSql(StringBuilder sqlBuilder);
} }
} }

View File

@ -59,6 +59,17 @@ namespace SqlSugar
return sql; return sql;
} }
public override void FormatSaveQueueSql(StringBuilder sqlBuilder)
{
var sql = sqlBuilder?.ToString();
if (sql?.TrimStart()?.Substring(0, 5)?.EqualCase("begin") != true)
{
sqlBuilder.Clear();
sqlBuilder.AppendLine("begin");
sqlBuilder.Append(sql);
sqlBuilder.AppendLine("end; ");
}
}
#region Helper #region Helper
public bool IsUppper public bool IsUppper
{ {