diff --git a/src/dsql/DdlNodes.epp b/src/dsql/DdlNodes.epp index 2b28b79228..fd537f4016 100644 --- a/src/dsql/DdlNodes.epp +++ b/src/dsql/DdlNodes.epp @@ -1726,7 +1726,7 @@ void CreateAlterFunctionNode::execute(thread_db* tdbb, DsqlCompilerScratch* dsql AutoSavePoint savePoint(tdbb, transaction); bool altered = false; - const bool alterIndividualParameters = (alter && !returnType && !(body || external)); + const bool alterIndividualParameters = (!create && alter && !returnType && !(body || external)); // first pass if (alterIndividualParameters) @@ -2742,7 +2742,7 @@ void CreateAlterProcedureNode::execute(thread_db* tdbb, DsqlCompilerScratch* dsq AutoSavePoint savePoint(tdbb, transaction); bool altered = false; - const bool alterIndividualParameters = (alter && !(body || external)); + const bool alterIndividualParameters = (!create && alter && !(body || external)); // first pass if (alterIndividualParameters) diff --git a/src/dsql/PackageNodes.epp b/src/dsql/PackageNodes.epp index 22e9fa0782..b94a67bde3 100644 --- a/src/dsql/PackageNodes.epp +++ b/src/dsql/PackageNodes.epp @@ -322,7 +322,7 @@ void CreateAlterPackageNode::execute(thread_db* tdbb, DsqlCompilerScratch* dsqlS // run all statements under savepoint control AutoSavePoint savePoint(tdbb, transaction); - const bool alterIndividualParameters = (alter && !items); + const bool alterIndividualParameters = (!create && alter && !items); if (alter) {