函数是不行的.
写个存储过程放在MASTER,把你的脚本前面加EXEC(',后面加'),放到这个存储过程.

解决方案 »

  1.   

    没有创建数据库的系统存储过程,也不可用函数
    你可以如扬兄所说,写个MASTER.DBO.YOURPROC,把创建数据库的参数作为该过程的参数,用EXEC来执行
      

  2.   

    你只能自己写存储过程来实现。如楼上两位所说。
      另外你需要注意,要想创建数据必须登录到Master数据中,否则在存储过程中执行Create database会报错,而且在存储过程中不允许使用Use 语句
      

  3.   

    看一下:http://www.csdn.net/expert/topic/705/705025.xml?temp=.5814478
      

  4.   

    我试了,还是不行,我把我的目的详细说明一下请大家一块想办法。
    我想在应用程序中动态创建sqlserver数据库,要求该数据库的存储过程和部分表的数据在创建后都存在。sqlserver中已经存在该数据库,我想根据该数据库创建个新的另一个名称的数据库。
      

  5.   

    可以考虑建立一个模板数据库文件(mdf+ldf),放在默认目录下,然后根据你的规则生成数据库名称,然后CREATE DATABASE,再SP_ATTACH_DB即可
    SP_ATTACH_DB的用法请自己察看帮助,EASY!