⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 createprocedure.sql

📁 这是1个数据库
💻 SQL
📖 第 1 页 / 共 4 页
字号:
as
begin
	select @retval = 0	
	insert into Login(UserID,[Password],Role) 
	values (@id,'','Teacher')
	if(@@ROWCOUNT = 1 )
	begin
	insert into Teacher([ID],[Name],Email,Prof) 
	values (@id ,@name ,@email ,@prof)
	select @retval = 1
	end

end

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Member_Delete_Student    Script Date: 2003-5-31 17:34:10 ******/

/*删除学生*/
create procedure Member_Delete_Student(
	@id nvarchar(20)
)
as
begin
	Delete from Selected_Class
		Where StudentID = @id
	Delete from Student
		where [ID] = @id
	Delete from Login
		where [UserID] = @id
end

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Member_Delete_Teacher    Script Date: 2003-5-31 17:34:10 ******/

/*删除教师信息*/
create procedure Member_Delete_Teacher(
	@id nvarchar(20)
)
as
begin
	Delete from Selected_Class 
		where ClassID = any (Select Class.[ID] 
					from Class,Teacher
					where Class.TeacherID=Teacher.[ID] and Teacher.[ID] = @id)
	Delete from Class
		where [ID] = any (Select Class.[ID] 
					from Class,Teacher
					where Class.TeacherID=Teacher.[ID] and Teacher.[ID] = @id)
	Delete from Course 
		where AvailableTeacher = @id
	Delete from Teacher
		where [ID] = @id
	Delete from Login
		where [UserID] = @id
end

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Member_List_Student    Script Date: 2003-5-31 17:34:10 ******/
/*得到学生列表*/
create procedure Member_List_Student(
	@classid varchar(30)
)
as
begin
	Select [ID],[Name],BelongingClass from Student
	where BelongingClass=
	(select ClassName from Classes where [ID]=@classid)
end

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Member_List_Teacher    Script Date: 2003-5-31 17:34:10 ******/
/*得到教师列表*/
create procedure Member_List_Teacher
as
begin
	Select [ID],[Name],Email,Prof from Teacher
end

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Member_Student_GetClasses    Script Date: 2003-5-31 17:34:10 ******/
/*得到学生班级*/
create procedure Member_Student_GetClasses
as
begin
	select [ID],ClassName from Classes where Type=2
end

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Member_Teacher_GetProfList    Script Date: 2003-5-31 17:34:10 ******/

CREATE PROCEDURE Member_Teacher_GetProfList
AS
BEGIN
	Select Info
	from Enum
	where Type>10 and Type<20
END

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Member_Update_Student    Script Date: 2003-5-31 17:34:10 ******/

/* 更新学生信息 */
CREATE PROCEDURE Member_Update_Student(
	@id            nvarchar(20),
	@name          nvarchar(10),
	@classname     nvarchar(10),
	@retval        int output
)
AS
BEGIN
    IF EXISTS(SELECT * FROM [Student] WHERE [ID] = @id)
    BEGIN
        UPDATE [Student] 
        SET    [Name] = @name, [BelongingClass] = @classname
        WHERE  [ID] = @id
        SET @retval = 1
    END
    ELSE
    BEGIN
        SET @retval = 0
    END
	 
    RETURN 
END


GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Member_Update_Teacher    Script Date: 2003-5-31 17:34:10 ******/

/* 更新教师信息 */
CREATE PROCEDURE Member_Update_Teacher(
	@id      nvarchar(20),
	@name    nvarchar(10),
	@email   nvarchar(50),
	@prof    nvarchar(10),
	@retval  int output
)
AS
BEGIN
    IF EXISTS(SELECT * FROM [Teacher] WHERE [ID] = @id)
    BEGIN
        UPDATE [Teacher] 
        SET    [Name] = @name, [Email] = @email, [Prof] = @prof
        WHERE  [ID] = @id
        SET @retval = 1
    END
    ELSE
    BEGIN
        SET @retval = 0
    END
	 
    RETURN 
END

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Security_Set_Password    Script Date: 2003-5-31 17:34:10 ******/
/*设置密码*/
CREATE PROCEDURE Security_Set_Password
   @UserId       nvarchar(20) ,         
   @OldPassword  varchar (50) ,                                               
   @Password     varchar(50) ,                                      
   @Return smallint   output
AS


SET @Return = 0

IF EXISTS(SELECT * FROM Login WHERE UserID=@UserId AND Password=@OldPassword)
	BEGIN
	  SET @Return = 1
	  UPDATE Login SET Password=@Password
	    WHERE UserID=@UserId
	END
ELSE  
	BEGIN
	  SET @Return=0
	END
RETURN



GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Statisitics_Get_BelowTwoStudent    Script Date: 2003-5-31 17:34:10 ******/

CREATE PROCEDURE Statisitics_Get_BelowTwoStudent

AS
BEGIN

	SELECT Student.[ID],Student.[Name],Student.BelongingClass,Count(Selected_Class.ClassID) as Number
	FROM Student LEFT JOIN Selected_Class
	ON Student.[ID] = Selected_Class.StudentID
	GROUP BY Student.[ID],Student.[Name],Student.BelongingClass
	HAVING (COUNT(Selected_Class.ClassID)<2)
	Order by Number
END

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Statisitics_Get_ClassByCourseID    Script Date: 2003-5-31 17:34:10 ******/


CREATE PROCEDURE  Statisitics_Get_ClassByCourseID
(
	@courseid varchar(30)
)

AS

BEGIN
	SELECT Classes.ClassName AS CourseName , Class.[Name] AS ClassName, Class.[ID] AS ClassID
	FROM  Class LEFT JOIN Classes
        ON    Class.CourseID = Classes.[ID]
	WHERE Class.CourseID = @courseid

END



GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Statisitics_Get_Course    Script Date: 2003-5-31 17:34:10 ******/

CREATE PROCEDURE Statisitics_Get_Course

AS

BEGIN
	SELECT [ID] as CourseID, ClassName as CourseName 
	FROM   Classes
	WHERE Classes.Type = 1 or Classes.Type = 3
END

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Statisitics_Get_SelectedClassNumber    Script Date: 2003-5-31 17:34:10 ******/


/*获取每门课的选课人数*/
CREATE PROCEDURE Statisitics_Get_SelectedClassNumber
AS

select Number,ClassName as CourseName,Info
from (Classes inner join Enum
on Classes.Type=Enum.Type and Classes.Type in (1,3))
left join (
	SELECT COUNT(StudentID) AS Number,CourseID
	FROM ( Selected_Class right join Class as b 
	on Selected_Class.ClassID = b.[ID])
	GROUP BY b.CourseID
	) as c
on Classes.[ID]=c.CourseID 



GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Statisitics_Get_StudentByClassID    Script Date: 2003-5-31 17:34:10 ******/

CREATE PROCEDURE Statisitics_Get_StudentByClassID
(
	@classid int
)
AS

BEGIN     
        SELECT StudentID, [Name], BelongingClass 
        FROM   Selected_Class ,Student
	WHERE  Selected_Class.ClassID = @classid
		and Selected_Class.StudentID = Student.[ID]
END




GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Statisitics_Get_Teacher    Script Date: 2003-5-31 17:34:10 ******/

CREATE PROCEDURE Statisitics_Get_Teacher

AS

BEGIN

	SELECT Teacher.Name AS 	Teacher ,Teacher.ID AS TeacherID 
	FROM Class LEFT JOIN Teacher
	ON Class.TeacherID  = Teacher.ID
	GROUP BY Teacher.ID,Teacher.Name

END

GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

/****** Object:  Stored Procedure dbo.Statisitics_Get_TeacherCourse    Script Date: 2003-5-31 17:34:10 ******/

CREATE PROCEDURE Statisitics_Get_TeacherCourse
(
	@teacherid nvarchar(20)
)
AS

BEGIN

	SELECT TeacherID ,  Teacher.[Name] as Teacher, Email, Prof, Classes.ClassName As CourseName, Class.[Name] As ClassName
	FROM  Class,Teacher,Classes
	Where Class.TeacherID = @teacherid 
	and Teacher.[ID] = @teacherid
	and Classes.[ID] = Class.CourseID

END


GO

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -