添加类别和修改类别(无限级别分类)
2007-12-26 12:34
309 查看
//添加类别
CREATE PROCEDURE DS_AddNewsType
(
@NewsTypeName varchar(100),
@NewsTypeDesc varchar(500),
@ParentID int,
@MasterID int,
@ReleaseDate datetime,
@iLanguage tinyint
)
AS
DECLARE @RecordCount as int
SET @RecordCount=
(
select count(*) from DS_NewsType where NewsTypeName=@NewsTypeName
)
DECLARE @NewsTypeLevel as int
SET @NewsTypeLevel=
(
select NewsTypeLevel from DS_NewsType where NewsTypeID=@ParentID
)
if @NewsTypeLevel is null
begin
set @NewsTypeLevel=0
end
if @RecordCount<=0 begin
INSERT INTO
DS_NewsType
(
NewsTypeName,
NewsTypeDesc,
ParentID,
NewsTypeLevel,
IDTree,
MasterID,
AddDate,
ReleaseDate,
iLanguage
)
VALUES
(
@NewsTypeName,
@NewsTypeDesc,
@ParentID,
@NewsTypeLevel+1,
'.',
@MasterID,
GetDate(),
@ReleaseDate,
@iLanguage
)
DECLARE @IDTree as varchar(100)
SET @IDTree=
(
select IDTree from DS_NewsType where NewsTypeID=@ParentID
)
if @IDTree is null
begin
Update
DS_NewsType
Set
IDTree = ltrim(str(@@Identity))+'.'
WHERE
NewsTypeID = @@Identity
end
else
begin
Update
DS_NewsType
Set
IDTree = @IDTree+ltrim(str(@@Identity))+'.'
WHERE
NewsTypeID = @@Identity
end
Update
DS_NewsType
Set
IsLeaf = 0
WHERE
NewsTypeID = @ParentID
end
RETURN @@Identity
GO
//修改类别
CREATE PROCEDURE DS_EditNewsType
(
@NewsTypeID int,
@NewsTypeName varchar(100),
@NewsTypeDesc varchar(500),
@ParentID int,
@MasterID int,
@ReleaseDate datetime,
@iLanguage tinyint
)
AS
DECLARE @RecordCount as int
SET @RecordCount=
(
select count(*) from DS_NewsType where NewsTypeName=@NewsTypeName and NewsTypeID!=@NewsTypeID
)
DECLARE @NewsTypeLevel as int
SET @NewsTypeLevel=
(
select NewsTypeLevel from DS_NewsType where NewsTypeID=@ParentID
)
if @NewsTypeLevel is null
begin
set @NewsTypeLevel=0
end
if @RecordCount<=0 begin
Update
DS_NewsType
Set
NewsTypeName = @NewsTypeName,
NewsTypeDesc = @NewsTypeDesc,
ParentID = @ParentID,
NewsTypeLevel = @NewsTypeLevel+1,
MasterID = @MasterID,
ReleaseDate = @ReleaseDate,
iLanguage = @iLanguage
WHERE
NewsTypeID = @NewsTypeID
DECLARE @IDTree as varchar(100)
SET @IDTree=
(
select IDTree from DS_NewsType where NewsTypeID=@ParentID
)
if @IDTree is null
begin
Update
DS_NewsType
Set
IDTree = ltrim(str(@NewsTypeID))+'.'
WHERE
NewsTypeID = @NewsTypeID
end
else
begin
Update
DS_NewsType
Set
IDTree =convert(nvarchar(100),@ParentID)+'.'+ltrim(str(@NewsTypeID))+'.'
WHERE
NewsTypeID = @NewsTypeID
end
Update
DS_NewsType
Set
IsLeaf = 0
WHERE
NewsTypeID = @ParentID
end
RETURN
GO
CREATE PROCEDURE DS_AddNewsType
(
@NewsTypeName varchar(100),
@NewsTypeDesc varchar(500),
@ParentID int,
@MasterID int,
@ReleaseDate datetime,
@iLanguage tinyint
)
AS
DECLARE @RecordCount as int
SET @RecordCount=
(
select count(*) from DS_NewsType where NewsTypeName=@NewsTypeName
)
DECLARE @NewsTypeLevel as int
SET @NewsTypeLevel=
(
select NewsTypeLevel from DS_NewsType where NewsTypeID=@ParentID
)
if @NewsTypeLevel is null
begin
set @NewsTypeLevel=0
end
if @RecordCount<=0 begin
INSERT INTO
DS_NewsType
(
NewsTypeName,
NewsTypeDesc,
ParentID,
NewsTypeLevel,
IDTree,
MasterID,
AddDate,
ReleaseDate,
iLanguage
)
VALUES
(
@NewsTypeName,
@NewsTypeDesc,
@ParentID,
@NewsTypeLevel+1,
'.',
@MasterID,
GetDate(),
@ReleaseDate,
@iLanguage
)
DECLARE @IDTree as varchar(100)
SET @IDTree=
(
select IDTree from DS_NewsType where NewsTypeID=@ParentID
)
if @IDTree is null
begin
Update
DS_NewsType
Set
IDTree = ltrim(str(@@Identity))+'.'
WHERE
NewsTypeID = @@Identity
end
else
begin
Update
DS_NewsType
Set
IDTree = @IDTree+ltrim(str(@@Identity))+'.'
WHERE
NewsTypeID = @@Identity
end
Update
DS_NewsType
Set
IsLeaf = 0
WHERE
NewsTypeID = @ParentID
end
RETURN @@Identity
GO
//修改类别
CREATE PROCEDURE DS_EditNewsType
(
@NewsTypeID int,
@NewsTypeName varchar(100),
@NewsTypeDesc varchar(500),
@ParentID int,
@MasterID int,
@ReleaseDate datetime,
@iLanguage tinyint
)
AS
DECLARE @RecordCount as int
SET @RecordCount=
(
select count(*) from DS_NewsType where NewsTypeName=@NewsTypeName and NewsTypeID!=@NewsTypeID
)
DECLARE @NewsTypeLevel as int
SET @NewsTypeLevel=
(
select NewsTypeLevel from DS_NewsType where NewsTypeID=@ParentID
)
if @NewsTypeLevel is null
begin
set @NewsTypeLevel=0
end
if @RecordCount<=0 begin
Update
DS_NewsType
Set
NewsTypeName = @NewsTypeName,
NewsTypeDesc = @NewsTypeDesc,
ParentID = @ParentID,
NewsTypeLevel = @NewsTypeLevel+1,
MasterID = @MasterID,
ReleaseDate = @ReleaseDate,
iLanguage = @iLanguage
WHERE
NewsTypeID = @NewsTypeID
DECLARE @IDTree as varchar(100)
SET @IDTree=
(
select IDTree from DS_NewsType where NewsTypeID=@ParentID
)
if @IDTree is null
begin
Update
DS_NewsType
Set
IDTree = ltrim(str(@NewsTypeID))+'.'
WHERE
NewsTypeID = @NewsTypeID
end
else
begin
Update
DS_NewsType
Set
IDTree =convert(nvarchar(100),@ParentID)+'.'+ltrim(str(@NewsTypeID))+'.'
WHERE
NewsTypeID = @NewsTypeID
end
Update
DS_NewsType
Set
IsLeaf = 0
WHERE
NewsTypeID = @ParentID
end
RETURN
GO
相关文章推荐
- 无限分类添加新类别代码
- 无限分类添加新类别代码
- 无限分类添加新类别代码
- java实现的可以无限级别添加子节点的菜单树
- 关于实现无限级别分类的问题?
- 详解Vue2 无限级分类(添加,删除,修改)
- PHP不用递归实现无限分类数据的树形格式化 5行9行代码修改
- 二级分类的添加删除和修改完成!
- asp.net(C#)html无限分类树 可新增 删除 修改
- PHP 无限级别分类的原理
- 结合FlyTreeView 无限级别的分类
- 牛腩购物14:商品相关表的设计 后台增加用户管理 Eval高级应用 商品类别无限分类,外键的建立,repeater嵌套repeater
- 关于SQL Server下无限多级别分类查询解决办法
- Vue2 无限级分类(添加,删除,修改)
- php 用递归实现的无限级别分类
- 关于SQL Server下无限多级别分类查询解决办法
- 无限级别分类的类
- 关于SQL Server下无限多级别分类查询解决办法
- asp.net(C#)html无限分类树 可新增 删除 修改
- php无限级别分类