CREATE proc createview
@viewname varchar(100),
@bdate datetime,
@edate datetime
as
declare @sql varchar(1000) --这个变量要定义大一点set @viewname='tmp'+@viewnameset @sql='create view ['+@viewnames+']
as
select * from [table1] where d between ''' +CONVERT(varchar(10),@bdate,120)+''' and '''+CONVERT(varchar(10),@edate,120)+''''exec (@sql)
GO
@viewname varchar(100),
@bdate datetime,
@edate datetime
as
declare @sql varchar(1000) --这个变量要定义大一点set @viewname='tmp'+@viewnameset @sql='create view ['+@viewnames+']
as
select * from [table1] where d between ''' +CONVERT(varchar(10),@bdate,120)+''' and '''+CONVERT(varchar(10),@edate,120)+''''exec (@sql)
GO
@viewname nvarchar(30), --少逗号
@bdate datetime,
@edate datetime
as
declare @sql nvarchar(4000) --这个变量要定义大一点
declare @viewnames nvarchar(40) --这个变量要定义大一点
begin
set @viewnames='tmp'+@viewname
set @sql='create view ['+@viewnames+']
as
select * from [table1] where d between''' +cast(@bdate as varchar) +''' and ''' +cast(@bdate as varchar)+'''' -- 时间要用引单包起来
end
exec (@sql)
GO
@viewname varchar(100),
@bdate datetime,
@edate datetime
as
declare @sql varchar(1000)
set @sql='create view [tem'+@viewnames+'] as select * from [table1] where d between ''' +CONVERT(varchar(10),@bdate,120)+''' and '''+CONVERT(varchar(10),@edate,120)+''''
exec (@sql)
GO
@viewname nvarchar(30), --少逗号
@bdate datetime,
@edate datetime
as
declare @sql nvarchar(8000) --这个变量要定义大一点
declare @viewnames nvarchar(40) --这个变量要定义大一点
begin
set @viewnames='tmp'+@viewname
set @sql='create view ['+@viewnames+']
as
select * from [table1] where d between''' --这里要加单绰号
+cast(@bdate as varchar)
+''' and ''' +cast(@bdate as varchar)+'''' --这里要加单绰号
end
exec (@sql)
GO