# Procedimientos y funciones SQL
**Programa académico:** Ing. de Sistemas
**Nombre del curso:** Bases de Datos II
**Nombre Completo:** Santiago Nieto
**Código:** S6B2025
**Fecha:** 10/11/2023
## Ejemplo 1
```sql
CREATE PROCEDURE Saludar
AS
PRINT 'Hola, Como estas?';
```

```sql
EXECUTE Saludar;
```

## Ejemplo 2
```sql
create procedure Proce_Nombre
@Nombre varchar(50)
as
BEGIN
select nombre,domicilio
from editoriales
where nombre = @Nombre;
END
```

```sql
execute Proce_Nombre 'Paidos';
```

## Ejemplo 3
```sql
CREATE PROCEDURE spu_addCliente
@PriNombre varchar(100),
@SegNombre varchar(100),
@Apellidos varchar(100),
@Direccion varchar(20),
@fec_nacimiento date
AS INSERT INTO CLIENTES(PriNombre,SegNombre,Apellidos,DIRECCION,fec_nacimiento)
VALUES (@Prinombre,@SegNombre,@Apellidos,@Direccion,@fec_nacimiento)
```

```sql
DECLARE @fec_nacimiento datetime
set @fec_nacimiento = convert(datetime,'29/12/1976',103)
EXEC spu_addCliente 'David','Sarmiento','Cervantes','00000002323',@fec_nacimiento
```

```sql!
select * from CLIENTES;
```

## Ejemplo 4
```sql
CREATE PROCEDURE spu_ObtenerPrecioLibro @codigoLib int
AS
BEGIN
SELECT titulo,precio
FROM libros
WHERE codigo_lib = @codigoLib
END
```

```sql
execute spu_ObtenerPrecioLibro '9';
```

## Ejemplo 5
```sql
CREATE PROCEDURE spu_EstaCaro @codigoLib varchar(20)
AS
BEGIN
IF (
SELECT precio FROM libros
WHERE codigo_lib = @codigoLib)<20
BEGIN
PRINT 'ESTA CARO'
END
ELSE
PRINT 'ESTA BARATO'
END
```
```sql
execute spu_EstaCaro '9';
```
