❶ sql 视图能否执行存储过程及视图是否能定义变量Declare @Date Datetime
视图和存储过程是两种不同的执行,视图不能执行存储过程,由于不能执行存储过程自然也就不能定义变量Declare @Date Datetime
❷ SQL的视图是从( )中导出 在SQL语言中,建立存储过程的命令是
SQL
SERVER中可以在存储过程中创建视图,但要用动态SQL来执行。
create
view
view_name
as
...
不能直接使用,
可以改为exec('create
view
view_name
as
...').
❸ 关于SQL SERVER存储过程中创建视图
SQL SERVER中可以在存储过程中创建视图,但要用动态SQL来执行。
create view view_name
as
...
不能直接使用, 可以改为exec('create view view_name
as
...').
你的可以改成
create proc ### as
begin
if exists (select * from sysobjects where name='***'and xtyp='v')
drop view ***;
exec('create view *** as
select A.xh,A.xm,sum(case when A.zy =B.value then B.code else 0) code
from A,B group by A.xh,A.xm
')
end
这样改应该也可以
create proc ### as
declare @sqlstr varchar(255)
select @sqlstr='
if exists (select * from sysobjects where name=''***''and xtyp=''v'')
drop view ***;
create view *** as
select A.xh,A.xm,sum(case when A.zy =B.value then B.code else 0) code
from A,B group by A.xh,A.xm
'
exec(@sqlstr)
go
❹ sql中的视图与存储过程有什么不同的
sql中视图(view)和存储过程(procere)的区别:
View本身就是显示一个表格,View可以显示出表格,但是VIEW本身并没有包括任何数据,view也不接受参数,所以其实view就是一个虚拟的表格,而不是实际的,所以在需要参数的时候,需要提前在建立view的时候定义好。VIEW一般是给外部非专业IT人员使用,因为你可以随意修改名称并限定输出的内容。
Procere就像是执行子查询表格,接受参数,你可以用where或者order
by这样的参数经行进一步的定义
Procere被定义出来之后,非常的方便,下次如果需要调用相同的命令,就直接把procere名字打上去就能显示结果,通常为内部人员使用。
❺ sql server中的视图有什么用和存储过程有什么区别他的好处是什么
视图通常用于封装一个逻辑表
比如:
学生表我只想查看姓名,那么就可以通过视图将他封装成一个只查看姓名的逻辑表,以后直接调用这个表就能查看学生的姓名
存储过程就好比编程语言里面的函数、方法,通常对某一功能的封装,方便重复调用:
比如:
我要查看学生的总分,那么就可以把他写成一个存储过程,以后直接调用,不必重复编写这段Sql语句
❻ 2008SQL 存储过程中可以创建视图吗
存储过程中可以创建视图,但在创建之前先要判断该视图是否已经存在,如果存在的话需要先删除再创建。
❼ sql2000 存储过程在视图中可以这样用么怎么实现
select 表1.列 ,表2.列,case when 表1.列+表2.列>90 then'优' when 表1.列+表2.列<90 and 表1.列+表2.列>80 then '良' else '' end 新列 from 表1,表2 where 。。。
❽ sql server视图如何调用存储过程
你的过程是做什么用,你可以把过程转换成函数,函数是在视图中可以用的
以上,希望对你有所帮助!
❾ sql server如何在视图中调用存储过程
你的过程是做什么用,你可以把过程转换成函数,函数是在视图中可以用的
以上,希望对你有所帮助!