zoukankan      html  css  js  c++  java
  • 解决复制数据库的问题.

    在一套软件中分为多用户的情况下需要为每个用户创建及初始数据库的内容,特写了以下存储过程,希望可以为有这样需求的开发者带来方便!

    CREATE PROCEDURE CaUserDb
    (
    @user varchar(50),   --用户名
    @soureFile varchar(100),  --原备分文件
    @soureName varchar(100--原数据库名称  不需要写_Data
    )
    AS
    declare @sql varchar(3000)
    declare @sourePATH varchar(100--备份文件路径
    declare @descPATH varchar(100--目标文件路径
    --
    初始化数据库路径
    set @sourePATH='d:\sqlDatabase\'
    set @descPATH='d:\sqlDatabase\'
    set @sql='
    create database 前缀_
    '+@user+'
    ON
    (
      name=
    '+@soureName+'_Data,
      filename=
    '''+@descPATH+'前缀_'+@user+'_Data.mdf'',
       SIZE = 10,
       FILEGROWTH = 15% 
    )
    LOG ON
    (
      name=
    '''+@soureName+'_Log'',
      filename=
    '''+@descPATH+'前缀_'+@user+'_Log.LDF'',
       SIZE = 5MB,
       MAXSIZE = 25MB,
       FILEGROWTH = 5MB
    )
    --开始还原
    RESTORE DATABASE 前缀_
    '+@user+' from disk='''+@sourePATH+@soureFile+''' WITH REPLACE
    '
    exec(@sql)
    GO
  • 相关阅读:
    想出去走走
    一辈子的孤单
    好久不见
    bash 源码分析
    如何查看bash shell 帮助信息?
    mvn使用笔记
    StringTemplate初步使用
    使用tungsten将mysql的数据同步到hadoop
    《大脑幸福密码》
    《跳出头脑,融入生活》
  • 原文地址:https://www.cnblogs.com/daxia/p/570876.html
Copyright © 2011-2022 走看看