简单的sql存储过程编写 谢~

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单的sql存储过程编写 谢~相关的知识,希望对你有一定的参考价值。

有三个表student,course,sc
利用学生名单查询该生选修的课程名、成绩、任课教师名

create proc sc_query
@student_id char(4) = null
as
select cname,grade,teacher_name from course join sc on course.cid=sc.cid where sid=@student_id
执行时输入:
exec sc_query '0001'
这是根据学号来查找了,如果是根据学生姓名,还需要改写select语句。那就要进行三表连接了。另外你只提到了三个表student,course,sc,不知道你的教师姓名保存在哪里,如果是保存在teachers表中,那要找到教师姓名还要连接teachers表。大体的语句如此,具体再修改就是了。另外你的学号字段是什么数据类型,还需要根据具体情况改写,这里数据类型不能错的。
参考技术A CREATE PROCEDURE pro_student_course_sc
AS
select student.st_name,student.co_name,course.mark,sc.sc_teachername
from student,course,sc
GO

用SQL怎样编写一个存储过程?

CREATE PROCEDURE [dbo].[usp_InsertTool]
@T_Name nvarchar(50),
@T_OldPrice money,
@T_TypeID smallint,
@T_CreateTime smalldatetime,
@T_IsValid bit,
@T_Description nvarchar(500),
@T_SoldCount bigint,
@T_ID int OUTPUT
AS
--SET NOCOUNT ON
INSERT INTO [dbo].[NA.Tool] (
[T_Name],
[T_OldPrice],
[T_TypeID],
[T_CreateTime],
[T_IsValid],
[T_Description],
[T_SoldCount]
) VALUES (
@T_Name,
@T_OldPrice,
@T_TypeID,
@T_CreateTime,
@T_IsValid,
@T_Description,
@T_SoldCount
)
--SET @T_ID = SCOPE_IDENTITY()
SELECT SCOPE_IDENTITY()

这就是一个插入数据并返回记录ID的存储过程,各种类型的参数都给你用到了
参考技术A create proc 要定义的视图名 as select 参数 from 视图名

以上是关于简单的sql存储过程编写 谢~的主要内容,如果未能解决你的问题,请参考以下文章

SQL编写一个存储过程

用SQL怎样编写一个存储过程?

1.PLSQL编写简单存储过程(无参,纯打印)

如何编写存储过程

如何在sql创建一条插入数据的存储过程

MySQL存储过程