首页 新闻 会员 周边 捐助

sql最佳练习

0
[已关闭问题]

---------------------------------
--学生表[学籍档案表]
---------------------------------
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_TABLE 'T_SYS_STUDENT',@LB_RESULT;
GO
CREATE TABLE T_SYS_STUDENT
(ID          INTEGER        IDENTITY  NOT NULL , --学生主码
 CODE  VARCHAR(20) NOT NULL,   --学号
 NAME  VARCHAR(20) NOT NULL,   --学生姓名
 BIRTHDAY TP_DAY,      --出生日期
 SEX  TP_TFT,      --性别
 ADDRESS VARCHAR(200),     --家庭住址
 MOBIL  VARCHAR(30),     --手机号码
 TEL  VARCHAR(30),     --住宅电话
 ETIME  TP_DAY,      --入学时间 enrollment
 NATION  SMALLINT NOT NULL,   --民族  --T_HRM_CODE_NATION(ID)
 IDCARD  VARCHAR(30),     --身份证号

 MEMO  VARCHAR(200),     --备注

 QHELP  VARCHAR(120),     --查询帮助
 SORT  TINYINT,     --显示排序
 DEL  TP_TFF,      --是否逻辑删除
)
GO
EXEC PRO_DBT_DROP_PK 'T_SYS_STUDENT'
ALTER TABLE T_SYS_STUDENT ADD CONSTRAINT PK_SYS_STUDENT PRIMARY KEY(ID)
GO
DECLARE @LB_RESULT BIT;EXECUTE PRO_DBT_DROP_UQ 'UQ_SYS_STUDENT_CODE';
ALTER TABLE T_SYS_STUDENT ADD CONSTRAINT UQ_SYS_STUDENT_CODE UNIQUE (CODE)
GO

EXECUTE PRO_DBT_DROP_FK 'FK_SYS_STUDENT_NATION'
ALTER TABLE T_SYS_STUDENT ADD CONSTRAINT FK_SYS_STUDENT_NATION FOREIGN KEY(NATION) REFERENCES T_HRM_CODE_NATION(ID)  ON DELETE NO ACTION ON UPDATE NO ACTION
GO

--要求:写8个存储过程
--01
--================================================================================================================================================--
-- 存储过程名称:PRO_STUDENT_IsExist
-- 参数说明:@ID  ID值
-- 完成功能:判断ID等于参数数值的记录是否存在。通过SELECT语句返回结果。
--================================================================================================================================================--
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_PROCEDURE PRO_STUDENT_IsExist, @LB_RESULT;
GO
CREATE PROCEDURE [PRO_STUDENT_IsExist]
@ID INT
WITH ENCRYPTION  AS
BEGIN

END
GO
 
--02
--================================================================================================================================================--
-- 存储过程名称:PRO_STUDENT_CountByWhere
-- 参数说明: @WHERE   查询条件
--   @recordCount 通过本output参数返回结果
-- 完成功能: 查询符合条件的记录有多少条
--================================================================================================================================================--
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_PROCEDURE PRO_STUDENT_CountByWhere, @LB_RESULT;
GO
CREATE PROCEDURE [PRO_STUDENT_CountByWhere]
@WHERE VARCHAR(8000),
@recordCount int output
WITH ENCRYPTION  AS
BEGIN

END
GO
 
--03
--================================================================================================================================================--
-- 存储过程名称:PRO_STUDENT_SelectAll
-- 参数说明: 无
-- 完成功能: 查询出所有的记录、字段
--================================================================================================================================================--
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_PROCEDURE PRO_STUDENT_SelectAll, @LB_RESULT;
GO
CREATE PROCEDURE [PRO_STUDENT_SelectAll]
WITH ENCRYPTION  AS
BEGIN

END
GO
 
--04
--================================================================================================================================================--
-- 存储过程名称:PRO_STUDENT_Select
-- 参数说明:@ID  ID值
-- 完成功能:查询出ID = 参数值的记录的所有字段
--================================================================================================================================================--
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_PROCEDURE PRO_STUDENT_Select, @LB_RESULT;
GO
CREATE PROCEDURE [PRO_STUDENT_Select]
@ID INT
WITH ENCRYPTION  AS
BEGIN

END
GO
 
--05
--================================================================================================================================================--
-- 存储过程名称:PRO_STUDENT_SelectByParms
-- 参数说明: @WHERE   查询条件
-- 完成功能: 查询出符合条件的记录的所有字段
--================================================================================================================================================--
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_PROCEDURE PRO_STUDENT_SelectByParms, @LB_RESULT;
GO
CREATE PROCEDURE [PRO_STUDENT_SelectByParms]
@WHERE VARCHAR(8000)
WITH ENCRYPTION  AS
BEGIN

END
GO
 
--06
--================================================================================================================================================--
-- 存储过程名称:PRO_STUDENT_Insert
-- 参数说明: 有多少个字段,请设置多少个参数
-- 完成功能: 插入一条记录
--================================================================================================================================================--
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_PROCEDURE PRO_STUDENT_Insert, @LB_RESULT;
GO
CREATE PROCEDURE [PRO_STUDENT_Insert]
--此处请设置参数,有多少个字段,设置多少个参数
WITH ENCRYPTION  AS
BEGIN

END
GO
 
--07
--================================================================================================================================================--
-- 存储过程名称:PRO_STUDENT_Update
-- 参数说明: 有多少个字段,请设置多少个参数
-- 完成功能: 更新一条记录,ID字段不需要修改
--================================================================================================================================================--
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_PROCEDURE PRO_STUDENT_Update, @LB_RESULT;
GO
CREATE PROCEDURE [PRO_STUDENT_Update]
--此处请设置参数,有多少个字段,设置多少个参数
WITH ENCRYPTION  AS
BEGIN

END
GO
 
--08
--================================================================================================================================================--
-- 存储过程名称:PRO_STUDENT_Delete
-- 参数说明:@ID  ID值
-- 完成功能:删除 ID = 参数值的指定记录
--================================================================================================================================================--
DECLARE @LB_RESULT BIT;
EXECUTE PRO_DBT_DROP_PROCEDURE PRO_STUDENT_Delete, @LB_RESULT;
GO
CREATE PROCEDURE [PRO_STUDENT_Delete]
@ID INT
WITH ENCRYPTION  AS
BEGIN

END
GO

请各位将其填好。试一试

shexiaohui的主页 shexiaohui | 初学一级 | 园豆:200
提问于:2009-06-09 09:24
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册