diff --git a/src/dbup-oracle/OracleCommandReader.cs b/src/dbup-oracle/OracleCommandReader.cs
index ffa686c..41e2750 100644
--- a/src/dbup-oracle/OracleCommandReader.cs
+++ b/src/dbup-oracle/OracleCommandReader.cs
@@ -20,7 +20,8 @@ public class OracleCommandReader : SqlCommandReader
/// Hook to support custom statements
///
protected override bool IsCustomStatement => TryPeek(DelimiterKeyword.Length, out var statement) &&
- string.Equals(DelimiterKeyword, statement, StringComparison.OrdinalIgnoreCase);
+ string.Equals(DelimiterKeyword, statement, StringComparison.OrdinalIgnoreCase) &&
+ string.IsNullOrEmpty(GetCurrentCommandTextFromBuffer());
///
/// Read a custom statement
diff --git a/src/dbup-oracle/OracleCustomDelimiterCommandReader.cs b/src/dbup-oracle/OracleCustomDelimiterCommandReader.cs
index d2278a1..cfc1d33 100644
--- a/src/dbup-oracle/OracleCustomDelimiterCommandReader.cs
+++ b/src/dbup-oracle/OracleCustomDelimiterCommandReader.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Text;
using DbUp.Support;
@@ -20,7 +20,8 @@ public OracleCustomDelimiterCommandReader(string sqlText, char delimiter) : base
///
protected override bool IsCustomStatement
=> TryPeek(DelimiterKeyword.Length - 1, out var statement) &&
- string.Equals(DelimiterKeyword, CurrentChar + statement, StringComparison.OrdinalIgnoreCase);
+ string.Equals(DelimiterKeyword, CurrentChar + statement, StringComparison.OrdinalIgnoreCase) &&
+ string.IsNullOrEmpty(GetCurrentCommandTextFromBuffer());
///
/// Read a custom statement