[SQL ]关于SQL的预存程序请教

楼主: bluexmilk ( )   2015-07-27 20:26:48
数据库名称:SQL serever
数据库版本:2012
内容/问题描述:
学校作业要我们分别用自定函数跟预存
写出显示日期的相关程式
create function datefunction ( @d date ,@yes int)
returns varchar (100)
AS
BEGIN
DECLARE @str varchar(100)
if @yes = 1
select @str=
'民国'
+cast((datepart(yyyy,@d)-1911) as varchar)
+'年'
+replicate('0',2-len(cast(datepart(mm,@d) as varchar)))
+cast(datepart(mm,@d) as varchar)
+'月'
+replicate('0',2-len(cast(datepart(dd,@d)as varchar)))
+cast(datepart(dd,@d) as varchar)
+'日'
+'星期'
+substring ('日一二三四五六',datepart(dw,@d),1)
else
select @str=
'民国'
+cast((datepart(yyyy,@d)-1911) as varchar)
+'年'
+replicate('0',2-len(cast(datepart(mm,@d) as varchar)))
+cast(datepart(mm,@d) as varchar)
+'月'
+replicate('0',2-len(cast(datepart(dd,@d)as varchar)))
+cast(datepart(dd,@d) as varchar)
+'日'
RETURN @str
END;
以上是自定函数的写法
执行后没有问题
但写程预存程序就卡住了...
有无高手可以指导一下
作者: lbeeon (力比恩)   2015-07-27 22:10:00
sp直接call?不过你丢一个没问题的东西上来 是要..
楼主: bluexmilk ( )   2015-07-27 22:36:00
不好意思 我是想要请问说 如果按照上述的题型 要做成预存程式 该如何下手
作者: lbeeon (力比恩)   2015-07-27 23:32:00
datefunction(@d,@yes)变成 exec sp_datefunction @d,@yes剩下的就差不多

Links booklink

Contact Us: admin [ a t ] ucptt.com