Función: Es uno de los pensamientos fundamentales en la programación de computadoras. Se utiliza para calcular algo a partir de una entrada dada. De ahí su nombre de Matemáticas. La función puede ser definida por el usuario o predefinida. El programa de función tiene un bloque de código que realiza algunas tareas o funciones específicas. Procedimiento: En la programación de un conjunto particular de instrucciones o comandos a lo largo conocido como un procedimiento. Dependiendo del lenguaje de programación se le conoce como procedimiento, subrutina, función o subprograma. Diferencia entre función y procedimiento:
S.NO | Función | Procedimiento |
---|---|---|
1. | Una función se trata como una expresión. | Mientras que un procedimiento no se trata como una expresión. |
2. | La función se usa para calcular algo a partir de una entrada dada. De ahí su nombre de Matemáticas. | Mientras que el procedimiento es el conjunto de comandos, que se ejecutan en un orden. |
3. | La función puede ser llamada por un procedimiento. | Pero un procedimiento no puede ser llamado por una función. |
4. | En sql, dentro de la función no podemos usar los comandos DML (lenguaje de manipulación de datos) como Insertar, Eliminar, Actualizar. | Aquí, en sql, dentro del procedimiento podemos usar comandos DML. |
5. | Las funciones se pueden llamar a través de consultas sql. | Sin embargo, el procedimiento no se puede llamar a través de una consulta sql. |
6. | Cada vez que se compilan las funciones cuando se las llama. | Mientras que los procedimientos se compilan solo una vez y se pueden llamar una y otra vez según sea necesario sin tener que compilarlos cada vez. |
7. | La declaración de retorno de una función devuelve el control y el valor del resultado de la función al programa que llama. | Si bien la declaración de devolución del procedimiento devuelve el control al programa que llama, no puede devolver el valor del resultado. |
8. | La función no admite bloques try-catch. | Si bien admite bloques de prueba y captura. |
9. | La función se puede operar en la instrucción SELECT. | Si bien no se puede operar en la instrucción SELECT. |
10 | La función no admite identificadores de transacciones explícitos. | Mientras que el procedimiento admite identificadores de transacciones explícitos. |