要开发用户管理系统,我们首先要了解需求,现在就举一个简单需求,用户表,假设有两种角色用一个字段departID来判断,管理员和员工,
我们要先建一个用户表custom和一个部门表department:
CREATE TABLE [dbo].[custom](
|
[id] [
int
] IDENTITY(1,1) NOT NULL,
|
[cname] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
|
[departID] [
int
] NOT NULL,
|
[age] [
int
] NOT NULL,
|
[ename] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
|
[password] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
|
CONSTRAINT [PK_custom] PRIMARY KEY CLUSTERED
|
(
|
[id] ASC
|
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
) ON [PRIMARY];
|
|
CREATE TABLE [dbo].[department](
|
[id] [
int
] IDENTITY(1,1) NOT NULL,
|
[departname] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
|
[description] [nchar](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
|
CONSTRAINT [PK_department] PRIMARY KEY CLUSTERED
|
(
|
[id] ASC
|
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
) ON [PRIMARY]
|
建完数据库表后,开始写存储过程,插入一条数据:
CREATE PROCEDURE [dbo].[spInsertCustom]
|
@cname nvarchar(50),
|
@ename nvarchar(50),
|
@age
int
,
|
@departID
int
,
|
@password nvarchar(50)
|
AS
|
BEGIN
|
insert into custom(cname,departID,age,ename,password) values (@cname,@departID,@age,@ename,@password)
|
END
|
|
RETURN @@Identity
|
create PROCEDURE [dbo].[spInsertDepartment]
|
@departname nvarchar(50),
|
@description nvarchar(50)
|
AS
|
BEGIN
|
insert into department(departname,description)values(@departname,@description)
|
END
|
|
RETURN @@Identity
|
现建两个更新一条数据的存储过程:
CREATE PROCEDURE [dbo].[spupdatecustom]
|
@id
int
,
|
@cname nvarchar(50),
|
@departID
int
,
|
@age
int
,
|
@ename nvarchar(50),
|
@password nvarchar(50)
|
AS
|
BEGIN
|
update
|
custom
|
set
|
cname = @cname,
|
departID = @departID,
|
age = @age,
|
ename = @ename,
|
password = @password
|
where id = @id
|
END
|
COMMIT TRAN
|
create procedure spupdatedepart
|
(
|
@departname nvarchar(50),
|
@description nchar(10),
|
@id
int
|
)
|
as
|
UPDATE [dbo].[department]
|
SET [departname] = @departname
|
,[description] = @departname
|
WHERE id=@id
|
再新建两个取出所有用户的存储过程:
CREATE PROCEDURE [dbo].[spGetcustom]
|
|
AS
|
BEGIN
|
select * from custom order by id desc
|
END
|
create PROCEDURE [dbo].[spGetAlldepartment]
|
|
AS
|
BEGIN
|
select * from department
|
END
|
再新建一个根据ID取出一条数据的存储过程:
CREATE PROCEDURE [dbo].[spGetcustomer]
|
@id
int
|
AS
|
BEGIN
|
select * from custom where id = @id
|
END
|
现建一个根据部门名取部门ID的存储过程:
create PROCEDURE [dbo].[spGetdepartmenter]
|
@departname nvarchar(50)
|
AS
|
BEGIN
|
select * from department where departname = @departname
|
END
|
再建两个根据ID删除数据的存储过程:
create PROCEDURE [dbo].[spDeletecustom]
|
@id
int
|
AS
|
BEGIN
|
delete custom where id = @id
|
END
|
CREATE PROCEDURE spdeletedepart
|
@id
int
|
AS
|
BEGIN
|
delete department where id = @id
|
END
|
GO
|
数据库设计就建好了,这只是一个简单的示例.欢迎拍砖.
下次讲解SQLHelper的设计.