喔,CRUD!

在 SQL Server 中撰寫函式與預存程序

Meghan Kwartler

IT Consultant

為什麼用儲存程序做 CRUD?

  • 將 SQL 程式碼與其他應用層解耦

第 3 章 N 層架構

在 SQL Server 中撰寫函式與預存程序

為什麼用儲存程序做 CRUD?

  • 將 SQL 程式碼與其他應用層解耦

  • 更好的安全性

第 3 章 N 層架構

在 SQL Server 中撰寫函式與預存程序

為什麼用儲存程序做 CRUD?

  • 將 SQL 程式碼與其他應用層解耦

  • 更好的安全性

  • 效能

第 3 章 N 層架構

在 SQL Server 中撰寫函式與預存程序

C 代表 CREATE(建立)

CREATE PROCEDURE dbo.cusp_TripSummaryCreate (
  @TripDate as date, 
  @TripHours as numeric(18, 0)
) AS BEGIN INSERT INTO dbo.TripSummary(Date, TripHours) 
VALUES 
  (@TripDate, @TripHours) 
SELECT Date, TripHours 
FROM dbo.TripSummary 
WHERE Date = @TripDate END
在 SQL Server 中撰寫函式與預存程序

R 代表 READ(讀取)

CREATE PROCEDURE cusp_TripSummaryRead
    (@TripDate as date)
AS
BEGIN
SELECT Date, TripHours
FROM TripSummary
WHERE Date = @TripDate
END;
在 SQL Server 中撰寫函式與預存程序

U 代表 UPDATE(更新)

CREATE PROCEDURE dbo.cusp_TripSummaryUpdate
    (@TripDate as date,
    @TripHours as numeric(18,0))
AS
BEGIN
UPDATE dbo.TripSummary
SET Date = @TripDate,
    TripHours = @TripHours
WHERE Date = @TripDate
END;
在 SQL Server 中撰寫函式與預存程序

D 代表 DELETE(刪除)

CREATE PROCEDURE cusp_TripSummaryDelete
    (@TripDate as date, 
     @RowCountOut int OUTPUT)
AS
BEGIN
DELETE
FROM TripSummary
WHERE Date = @TripDate

SET @RowCountOut = @@ROWCOUNT
END;
在 SQL Server 中撰寫函式與預存程序

換你做 CRUD!

在 SQL Server 中撰寫函式與預存程序

Preparing Video For Download...