Cấp bậc tác giả:

DATABASE

Hướng dẫn xây dựng website: Viết store procedure phần 3

Được viết bởi QuangIT ngày 13/08/2012 lúc 07:30 PM
Tiếp theo chúng ta cần viết các hàm và Store Procedure cho bảng TB_News.
  • 0
  • 9581

Hướng dẫn xây dựng website: Viết store procedure phần 3

Tiếp theo chúng ta cần viết các hàm và Store Procedure cho bảng TB_News.
1. Store Procedure thêm, sửa, xóa một bài viết.
Cũng giống như với bảng TB_Category, mình viết spTB_News_Edit để thực hiện cả 3 hành động thêm, sửa, xóa một bài viết.

Nếu @Action=0 => xóa bài viết theo idNews=@idNews
Nếu @Action>0 => 
    Nếu @idNews=0 thí thêm mới bài viết
    Nếu @idNews>0 thì cập nhật bài viết theo idnews=@idnews
Store Procedure spTB_News_Edit  được viết như sau:
-- =============================================
-- Author:        webmaster@hmweb.com.vn
-- Description:   <Thêm, sửa hoặc xóa bài viết>\
-- =============================================
CREATE PROCEDURE [dbo].[spTB_News_Edit]
@Action int,
@idNews int, 
@CateID int, 
@UserName nvarchar(50), 
@Title nvarchar(500), 
@Description ntext, 
@Content ntext, 
@Author nvarchar(150), 
@Picture nvarchar(255), 
@CreateDate datetime, 
@PublishDate datetime, 
@Status int, 
@Link nvarchar(150)
AS
BEGIN
       -- Nếu @Action=0 --> Xóa bài viết theo @idNews
       IF @Action=0
       BEGIN
            DELETE FROM TB_News WHERE idNews=@idNews
       END
       -- Nếu Nếu @Action=1 --> Thêm mới hoặc sửa  bài viết
       ELSE
            BEGIN
                  --Nếu @idNews=0 --> Thêm mới  bài viết
                  IF @idNews=0
                  BEGIN
                        INSERT INTO TB_News 
                        (
                              CateID, 
                              UserName, 
                              Title, 
                              Description, 
                              Content,
                              Author, 
                              Picture, 
                              CreateDate, 
                              PublishDate, 
                              Status, 
                              Link
                        ) 
                        VALUES
                        (
                              @CateID,
                              @UserName, 
                              @Title, 
                              @Description, 
                              @Content, 
                              @Author, 
                              @Picture, 
                              @CreateDate, 
                              @PublishDate, 
                              @Status, 
                              @Link
                        )
                  END
                  --Nếu @idNews>0 --> Cập nhật bài viết với idNews=@idNews
                  IF @idNews>0
                  BEGIN
                        UPDATE TB_News
                        SET
                              CateID = @CateID,
                              UserName = @UserName,
                              Title = @Title,
                              Description = @Description,
                              Content = @Content,
                              Author = @Author,
                              Picture = @Picture,
                              CreateDate = @CreateDate,
                              PublishDate = @PublishDate,
                              Status = @Status,
                              Link = @Link
                        WHERE idNews=@idNews
                  END
            END
END
2. Store procedure Xóa tất cả bài viết theo chuyên mục

Khi cần xóa hết bài viết của một chuyên mục bạn viết thủ tục như sau:
-- =============================================
-- Author:        webmaster@hmweb.com.vn
-- Description:   <Xóa bài viết theo chuyên mục được chọn>
-- =============================================
CREATE PROCEDURE [dbo].[spTB_News_Delete_ByCateID]
@CateID int
AS
BEGIN
      DELETE FROM TB_News WHERE CateID=@CateID
END
3. Store procedure Xóa tất cả bài viết của một UserName

Khi cần xóa hết bài viết của một UserName bạn viết thủ tục như sau:
 -- =============================================
-- Author:        webmaster@hmweb.com.vn
-- Description:   <Xóa hết bài viết theo UserName>
-- =============================================
CREATE PROCEDURE [dbo].[spTB_News_Delete_ByUserName]
@UserName nvarchar(50)
AS
BEGIN
      DELETE FROM TB_News WHERE UserName=@UserName
END

Tiếp theo chúng ta sẽ viết các thủ tục truy vấn dữ liệu

Nguồn bài viết: hmweb

BÌNH LUẬN BÀI VIẾT

Bài viết mới nhất

LIKE BOX

Bài viết được xem nhiều nhất

HỌC HTML