Stored procedure

Scrivere funzioni e stored procedure in SQL Server

Meghan Kwartler

IT Consultant

Cos'è una stored procedure?

Cosa sono?

Routine che

  • Accettano parametri in input
  • Eseguono azioni (EXECUTE, SELECT, INSERT, UPDATE, DELETE e altre istruzioni SP)
  • Restituiscono uno stato (successo o errore)
  • Restituiscono parametri di output
Scrivere funzioni e stored procedure in SQL Server

Perché usare le stored procedure?

Perché?

  • Può ridurre i tempi di esecuzione
  • Può ridurre il traffico di rete
  • Permette programmazione modulare
  • Migliora la sicurezza
Scrivere funzioni e stored procedure in SQL Server

Qual è la differenza?

UDF

  • Devono restituire un valore
    • Consentite table-valued
  • SELECT incorporato consentito
  • Niente parametri di output
  • Niente INSERT, UPDATE, DELETE
  • Non possono eseguire SP
  • Niente gestione errori

SP

  • Valore di ritorno opzionale
    • Niente table-valued
  • Non eseguibili dentro SELECT
  • Restituiscono parametri di output e stato
  • INSERT, UPDATE, DELETE consentiti
  • Possono eseguire funzioni e SP
  • Gestione errori con TRY...CATCH
Scrivere funzioni e stored procedure in SQL Server

CREATE PROCEDURE con parametro OUTPUT

-- Prime quattro righe di codice
-- Il nome della SP deve essere univoco 
CREATE PROCEDURE dbo.cuspGetRideHrsOneDay 
    @DateParm date,
    @RideHrsOut numeric OUTPUT
AS
.......
Scrivere funzioni e stored procedure in SQL Server

CREATE PROCEDURE con parametro OUTPUT

CREATE PROCEDURE dbo.cuspGetRideHrsOneDay
    @DateParm date,
    @RideHrsOut numeric OUTPUT
AS
SET NOCOUNT ON
BEGIN
SELECT 
  @RideHrsOut = SUM(
    DATEDIFF(second, PickupDate, DropoffDate)
  )/ 3600
FROM YellowTripData
WHERE CONVERT(date, PickupDate) = @DateParm
RETURN
END;
Scrivere funzioni e stored procedure in SQL Server

Parametri di output vs. valori di ritorno

Parametri di output

  • Possono essere di qualsiasi tipo
  • Puoi dichiararne più per SP
  • Non possono essere table-valued

Valore di ritorno

  • Indica esito (successo o errore)
  • Solo tipo intero
  • 0 = successo, non zero = errore
Scrivere funzioni e stored procedure in SQL Server

Prontə per CREATE PROCEDURE!

Scrivere funzioni e stored procedure in SQL Server

Preparing Video For Download...