Skip to content

Commit

Permalink
Support for execute block (DNET-612).
Browse files Browse the repository at this point in the history
  • Loading branch information
cincuranet committed Jun 25, 2015
1 parent 3985708 commit 977f4c9
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 2 deletions.
Expand Up @@ -327,6 +327,21 @@ public void Execute(bool autoCommit = true)
this.OnCommandExecuted(sqlStatement, null, rowsAffected);
break;

case SqlStatementType.ExecuteBlock:
this.ProvideCommand().CommandText = sqlStatement;

this.OnCommandExecuting(this.sqlCommand);

dataReader = this.sqlCommand.ExecuteReader();
this.requiresNewConnection = false;

this.OnCommandExecuted(sqlStatement, dataReader, -1);
if (!dataReader.IsClosed)
{
dataReader.Close();
}
break;

case SqlStatementType.Fetch:
break;

Expand Down Expand Up @@ -1005,14 +1020,18 @@ public static SqlStatementType GetStatementType(string sqlStatement)
break;

case 'E':
if (StringParser.StartsWith(sqlStatement, "EXECUTE PROCEDURE", true))
if (StringParser.StartsWith(sqlStatement, "EXECUTE BLOCK", true))
{
return SqlStatementType.ExecuteProcedure;
return SqlStatementType.ExecuteBlock;
}
if (StringParser.StartsWith(sqlStatement, "EXECUTE IMMEDIATE", true))
{
return SqlStatementType.ExecuteImmediate;
}
if (StringParser.StartsWith(sqlStatement, "EXECUTE PROCEDURE", true))
{
return SqlStatementType.ExecuteProcedure;
}
if (StringParser.StartsWith(sqlStatement, "EXECUTE", true))
{
return SqlStatementType.Execute;
Expand Down
Expand Up @@ -295,6 +295,11 @@ public enum SqlStatementType
/// </summary>
Execute,

/// <summary>
/// Represents the SQL statement: <b>EXECUTE BLOCK</b>
/// </summary>
ExecuteBlock,

/// <summary>
/// Represents the SQL statement: <b>EXECUTE IMMEDIATE</b>
/// </summary>
Expand Down

0 comments on commit 977f4c9

Please sign in to comment.