嘿伙计们我想使用SQL Server功能,
我从不在SQL Server中使用函数,我只知道函数必须返回一个值,所以我有两个存储过程(1 for insert and 1 for select)
我的存储过程看起来像这样
对于插入:
create proc INS_tblteststud
@stdtid int=null,
@name varchar(50) =null,
@fullname varchar(50)=null,
@address varchar(50)=null,
@city varchar(50)=null,
@country varchar(50)=null,
@contno varchar(50)=null
as
begin
insert into tbl_student_test(name,fullname,address,city,country,contno)
values
(@name,@fullname,@address,@city,@country,@contno)
end
选择:
Create proc SEL_tblteststud
as
begin
select * from tbl_student_test
end
现在我想知道,如何将这些语句(Insert,Select)转换为函数?哪个更好地使用存储过程或函数?
答案 0 :(得分:0)
您正在混合过程和功能 ...
不允许在函数中放置数据更改命令。
你正在尝试的是不可能......
有三种类型的功能
BEGIN ... END
):返回结果集,但表现不佳 VIEW
一个过程也有一个返回值,它是tpye INT
并且不用于返回SP的结果,而是用于返回执行状态。
SP可能只是做某事而根本不返回任何程序结果。如果要返回程序结果,则必须使用
SELECT
。可以从外部获取内部SELECT
的结果,但这非常麻烦......