用存储过程创建数据库:

CREATE   proc   createDatabase
@path varchar(50),
@dbname varchar(20),
@outstr varchar(100) output
as
declare @s varchar(8000)
--set @s = 'USE master  --设置当前数据库为master,以便访问sysdatabases表'
set @s = '
CREATE DATABASE '+@dbname+'
ON  PRIMARY  --默认就属于PRIMARY主文件组,可省略
(
 NAME='''+@dbname+''',  --主数据文件的逻辑名

 FILENAME='''+@path+'\'+@dbname+'_Data.MDF'',  --主数据文件的物理名

 SIZE=5mb,  --主数据文件初始大小

 MAXSIZE=100mb,  --主数据文件增长的最大值

 FILEGROWTH=15%   --主数据文件的增长率

)
LOG ON
(
  NAME='''+@dbname+'_log'',

  FILENAME='''+@path+'\'+@dbname+'_Log.LDF'',

  SIZE=2mb,

  FILEGROWTH=1MB
)'

set @outstr =@@error         --检查打印出的SQL是否正确
exec (@s)
--execute  @outstr
GO

 

执行:declare @outstr varchar(10)exec createDatabase 'e:','dbtest',@outstr out

你可能感兴趣的:(sql,数据库,database,存储,Path)