为了账号安全,请及时绑定邮箱和手机立即绑定

sql 自动生成下个月库问题 谢谢!

sql 自动生成下个月库问题 谢谢!

HUWWW 2018-12-07 04:40:16
比如有数据库 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表结构(不带数据)
查看完整回答
反对 回复 2018-12-09
  • 1 回答
  • 0 关注
  • 327 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信