Deveel.Data.Sql.Statements.CreateProcedureStatement.ExecuteStatement C# (CSharp) Метод

ExecuteStatement() защищенный Метод

protected ExecuteStatement ( ExecutionContext context ) : void
context ExecutionContext
Результат void
        protected override void ExecuteStatement(ExecutionContext context)
        {
            //if (!context.User.CanCreateInSchema(ProcedureName.ParentName))
            //	throw new SecurityException();

            if (context.DirectAccess.RoutineExists(ProcedureName)) {
                if (!ReplaceIfExists)
                    throw new StatementException(String.Format("A routine named '{0}' already exists in the database.", ProcedureName));

                context.DirectAccess.DeleteRoutine(ProcedureName);
            }

            var parameters = new RoutineParameter[0];
            if (Parameters != null)
                parameters = Parameters.ToArray();

            var functionInfo = new PlSqlProcedureInfo(ProcedureName, parameters, Body) {
                Owner = context.User.Name
            };

            context.DirectAccess.CreateRoutine(functionInfo);
            //context.DirectAccess.GrantOn(DbObjectType.Routine, ProcedureName, context.User.Name, Privileges.Execute, true);
        }