cs_Content_CreateUpdateDelete///cs_Content_GetList///cs_Content_Load
2006-09-05 09:00
495 查看
ALTER PROCEDURE [dbo].[cs_Content_GetList]
(
@SettingsID int
)
AS
SELECT
*
FROM
cs_Content c
WHERE
c.Hidden = 0 and c.SettingsID = @SettingsID
ORDER BY
c.LastModified DESC
GO
ALTER PROCEDURE [dbo].cs_Content_CreateUpdateDelete
(
@ContentID int out,
@Action int,
@Name nvarchar(256),
@Title nvarchar(256),
@Body ntext,
@FormattedBody ntext,
@Hidden bit,
@UpdateDate bit,
@SettingsID int
)
AS
SET Transaction Isolation Level Read UNCOMMITTED
-- CREATE
IF @Action = 0
BEGIN
-- first check that content name is not already in use
--检查内容名称是否被使用
IF EXISTS
(
SELECT
NULL
FROM
cs_Content
WHERE
Name = @Name and SettingsID = @SettingsID
)
BEGIN
RAISERROR ( 'Content name in use', 16, 1)
RETURN
END
DECLARE @SortOrder int --声明排序类型
SELECT @SortOrder = coalesce(MAX(SortOrder) + 1, 1) FROM cs_Content where SettingsID = @SettingsID
-- Create a new content
--插入数据,即创建新内容.
INSERT INTO
cs_Content
(
Name,
Title,
Body,
FormattedBody,
Hidden,
SortOrder,
SettingsID
)
VALUES
(
@Name,
@Title,
@Body,
@FormattedBody,
@Hidden,
@SortOrder,
@SettingsID
)
SET @ContentID = SCOPE_IDENTITY()
END
-- UPDATE
ELSE IF @Action = 1
BEGIN
IF EXISTS
(
SELECT
NULL
FROM
cs_Content c
WHERE
c.Name = @Name
AND c.ContentID <> @ContentID and c.SettingsID = @SettingsID
)
BEGIN
RAISERROR ( 'Content name in use', 16, 1)
RETURN
END
IF EXISTS(SELECT NULL FROM cs_Content WHERE ContentID = @ContentID)
BEGIN
UPDATE
cs_Content
SET
Name = @Name,
Title = @Title,
Body = @Body,
FormattedBody = @FormattedBody
WHERE
ContentID = @ContentID and SettingsID = @SettingsID
EXEC cs_Content_UpdateDate @ContentID
END
END
-- DELETE
ELSE IF @Action = 2
BEGIN --如果为2,删除次记录
DELETE cs_Content WHERE ContentID = @ContentID and SettingsID = @SettingsID
END
GO
ALTER PROCEDURE [dbo].[cs_Content_Load]
(
@ContentID int,
@SettingsID int,
@Name nvarchar(256) = null
)
AS
IF(@ContentID > 0)
BEGIN
SELECT
[SettingsID], [ContentID], [Name], [Title], [Body], [FormattedBody], [LastModified], [SortOrder], [Hidden]
FROM
[dbo].[cs_Content]
WHERE
ContentID = @ContentID and SettingsID = @SettingsID
END
ELSE
BEGIN
SELECT
[SettingsID], [ContentID], [Name], [Title], [Body], [FormattedBody], [LastModified], [SortOrder], [Hidden]
FROM
[dbo].[cs_Content]
WHERE
[Name] = @Name and SettingsID = @SettingsID
END
GO
(
@SettingsID int
)
AS
SELECT
*
FROM
cs_Content c
WHERE
c.Hidden = 0 and c.SettingsID = @SettingsID
ORDER BY
c.LastModified DESC
GO
ALTER PROCEDURE [dbo].cs_Content_CreateUpdateDelete
(
@ContentID int out,
@Action int,
@Name nvarchar(256),
@Title nvarchar(256),
@Body ntext,
@FormattedBody ntext,
@Hidden bit,
@UpdateDate bit,
@SettingsID int
)
AS
SET Transaction Isolation Level Read UNCOMMITTED
-- CREATE
IF @Action = 0
BEGIN
-- first check that content name is not already in use
--检查内容名称是否被使用
IF EXISTS
(
SELECT
NULL
FROM
cs_Content
WHERE
Name = @Name and SettingsID = @SettingsID
)
BEGIN
RAISERROR ( 'Content name in use', 16, 1)
RETURN
END
DECLARE @SortOrder int --声明排序类型
SELECT @SortOrder = coalesce(MAX(SortOrder) + 1, 1) FROM cs_Content where SettingsID = @SettingsID
-- Create a new content
--插入数据,即创建新内容.
INSERT INTO
cs_Content
(
Name,
Title,
Body,
FormattedBody,
Hidden,
SortOrder,
SettingsID
)
VALUES
(
@Name,
@Title,
@Body,
@FormattedBody,
@Hidden,
@SortOrder,
@SettingsID
)
SET @ContentID = SCOPE_IDENTITY()
END
-- UPDATE
ELSE IF @Action = 1
BEGIN
IF EXISTS
(
SELECT
NULL
FROM
cs_Content c
WHERE
c.Name = @Name
AND c.ContentID <> @ContentID and c.SettingsID = @SettingsID
)
BEGIN
RAISERROR ( 'Content name in use', 16, 1)
RETURN
END
IF EXISTS(SELECT NULL FROM cs_Content WHERE ContentID = @ContentID)
BEGIN
UPDATE
cs_Content
SET
Name = @Name,
Title = @Title,
Body = @Body,
FormattedBody = @FormattedBody
WHERE
ContentID = @ContentID and SettingsID = @SettingsID
EXEC cs_Content_UpdateDate @ContentID
END
END
-- DELETE
ELSE IF @Action = 2
BEGIN --如果为2,删除次记录
DELETE cs_Content WHERE ContentID = @ContentID and SettingsID = @SettingsID
END
GO
ALTER PROCEDURE [dbo].[cs_Content_Load]
(
@ContentID int,
@SettingsID int,
@Name nvarchar(256) = null
)
AS
IF(@ContentID > 0)
BEGIN
SELECT
[SettingsID], [ContentID], [Name], [Title], [Body], [FormattedBody], [LastModified], [SortOrder], [Hidden]
FROM
[dbo].[cs_Content]
WHERE
ContentID = @ContentID and SettingsID = @SettingsID
END
ELSE
BEGIN
SELECT
[SettingsID], [ContentID], [Name], [Title], [Body], [FormattedBody], [LastModified], [SortOrder], [Hidden]
FROM
[dbo].[cs_Content]
WHERE
[Name] = @Name and SettingsID = @SettingsID
END
GO
相关文章推荐
- cs_Content_UpdateDate///cs_DisallowedName_CreateUpdateDelete///cs_DisallowedNames_Get
- cs_GetUserIDByAppToken///cs_Group_CreateUpdateDelete
- cs_Links_Get///cs_MarkPostAsRead///cs_Message_CreateUpdateDelete
- cs_BannedAddresses_Get///cs_BannedNetwork_CreateUpdateDelete///cs_BannedNetworks_Get
- cs_Censorship_CreateUpdateDelete///cs_Censorships_Get
- cs_LinkCategories_Get///cs_LinkCategory_CreateUpdateDelete//cs_LinkCategory_UpdateSortOrder
- hibernate-核心开发接口(delete、get、load 、saveOrUpdate 、SchemaExport)-7
- cs_ApplicationConfigurationSettings_CreateUpdate///cs_ApplicationConfigurationSettings_Get//cs_Audit_Post
- cs_BannedAddress_CreateUpdateDelete
- hibernate--session的CRUD方法, delete, load,get,update,saveorupdate, clear, flush
- [原创]java WEB学习笔记79:Hibernate学习之路--- 四种对象的状态,session核心方法:save()方法,persist()方法,get() 和 load() 方法,update()方法,saveOrUpdate() 方法,merge() 方法,delete() 方法,evict(),hibernate 调用存储过程,hibernate 与 触发器协同工作
- cs_Image_CreateUpdateDelete//cs_InkData_Add//cs_InkData_Delete
- 034:coreAPI_Delect,load,get,delete,update,saveOrupdate,clear,flush
- Hibernate深入理解----03Session缓存核心方法(save()和persist(),get()和load(),update()和saveOrUpdate,delete()和evil()
- cs_Link_CreateUpdateDelete///cs_Link_UpdateSortOrder
- hibernate中load,get;find,iterator;merge,saveOrUpdate,lock的区别
- SQL_AddDepartment / UpdateDepartment / DeleteDepartment / CreateCategory / UpdateCategory / DeleteCategory ...
- T-SQL(标准数据库查询语句) 在SQL Server 2008 下面的 Create、Update,Delete、Select
- LOAD,GET;FIND,ITERATOR;MERGE,SAVEORUPDATE,LOCK的区别
- List中update,search,delete方法的修正