比如有数据库 post201501(有表a)
希望下个月自动生成库 post201502(此库要有a的表结构 不要数据)
具体的利用作业这些细节配置 我知道。(只要脚本)
但是脚本我的有问题。
declare @dbname varchar(20),
@NextMonth datetime,
@Yeah varchar(4),
@Month varchar(2)
set @NextMonth = dateadd(month,1,getDate())
set @Yeah = cast(year(@NextMonth) as varchar(4))
select @Month = case when month(@NextMonth) >= 10 then cast(month(@NextMonth) as varchar(2)) else '0' + cast(month(@NextMonth) as varchar(2)) end
set @dbname='post' + @Yeah + @Month
declare @sql varchar(5000)
set @sql ='
IF NOT EXISTS(select * from sys.databases where name = ''' + @dbname +''')
BEGIN
CREATE DATABASE ' + @dbname + ' ON PRIMARY
(
NAME = N''' + @dbname + ''',FILENAME = N''D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\'+@dbname + '.mdf'',SIZE = 3072KB,FILEGROWTH = 1024KB
)
LOG ON
(
NAME = N''' + @dbname + '_log'',FILENAME = N''D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\'+@dbname + '_log.ldf'',SIZE = 1024KB,MAXSIZE = 2048MB,FILEGROWTH = 10240KB
)
END
'
exec (@sql)
我这样生成库 没把表(结构带过来。)
1 回答
汪汪一只猫
TA贡献1898条经验 获得超8个赞
貌似不用这么麻烦,
1、建立个每个月指定时间的job,这个作业去执行存储过程。
2、在存储过程中可以建立想要的表
select * into TableNext from TableName
select into 会自动copy表结构(不带数据)
- 1 回答
- 0 关注
- 327 浏览
添加回答
举报
0/150
提交
取消