SQL远程创建数据库
CREATE PROCEDURE [dbo].[p_CreateDB] @Des_DB sysname, @ServerName sysname=N'', @UserName sysname=N'', @pwd sysname=N'', @fliename sysname AS SET NOCOUNT ON DECLARE @srvid int, @dbsid int, @Dbid int, @DBFile int, @LogFile int, @CmdStr nvarchar(4000) declare @err int,@src varchar(255), @desc varchar(255),@dname varchar(255) IF ISNULL(@ServerName,N'')=N'' SET @ServerName=@@ServerName EXEC @err=sp_oacreate 'sqldmo.sqlserver',@srvid OUT IF @err<>0 GOTO lb_Err IF ISNULL(@UserName,N'')=N'' BEGIN EXEC @err=sp_oasetproperty @srvid,'loginsecure',-1 IF @err<>0 GOTO lb_Err EXEC @err=sp_oamethod @srvid,'connect',NULL,@ServerName END ELSE EXEC @err=sp_oamethod @srvid,'connect',NULL,@ServerName,@UserName,@pwd IF @err<>0 GOTO lb_Err EXEC @err=sp_oacreate 'SQLDMO.Database',@Dbid OUT IF @err<>0 GOTO lb_Err EXEC @err=sp_oasetproperty @Dbid, 'Name',@Des_DB IF @err<>0 GOTO lb_Err EXEC @err=sp_oacreate 'SQLDMO.DBFile',@DBFile OUT IF @err<>0 GOTO lb_Err EXEC @err=sp_oasetproperty @DBFile, 'Name',@Des_DB IF @err<>0 GOTO lb_Err set @dname=@fliename+@Des_DB+'.mdf' EXEC @err=sp_oasetproperty @DBFile, 'PhysicalName',@dname IF @err<>0 GOTO lb_Err EXEC @err=sp_oasetproperty @DBFile, 'PrimaryFile','true' IF @err<>0 GOTO lb_Err EXEC @err=sp_oasetproperty @DBFile, 'FileGrowthType',10 IF @err<>0 GOTO lb_Err EXEC @err=sp_oasetproperty @DBFile, 'FileGrowth',50 IF @err<>0 GOTO lb_Err EXEC @err = sp_OAMethod @Dbid,'FileGroups.Item("primary").DBFiles.Add',null,@DBFile IF @err<>0 GOTO lb_Err EXEC @err=sp_oacreate 'SQLDMO.LogFile',@LogFile OUT IF @err<>0 GOTO lb_Err set @dname=@Des_DB+'_log' EXEC @err=sp_oasetproperty @LogFile, 'Name',@dname IF @err<>0 GOTO lb_Err set @dname=@fliename+@dname+'.ldf' EXEC @err=sp_oasetproperty @LogFile, 'PhysicalName',@dname EXEC @err = sp_OAMethod @Dbid,'TransactionLog.LogFiles.Add',null,@LogFile IF @err<>0 GOTO lb_Err EXEC @err = sp_OAMethod @srvid,'Databases.Add',null,@dbid IF @err<>0 GOTO lb_Err EXEC @err= sp_OAGetProperty @srvid, 'Databases', @dbsid OUT IF @err<>0 GOTO lb_Err SET @CmdStr = 'Add' EXEC @err = sp_OAMethod @dbsid,@CmdStr,null,@dbid SET @err=0 GOTO lb_Exit lb_Err: EXEC sp_oageterrorinfo NULL, @src OUT, @desc OUT EXEC sp_OADestroy @LogFile EXEC sp_OADestroy @DBFile EXEC sp_OADestroy @Dbsid EXEC sp_OADestroy @Dbid EXEC sp_OADestroy @srvid EXEC @err=sp_oamethod @srvid,'DisConnect' RAISERROR(N'错误编号 %#x, 错误源"%s", 错误描述 "%s"',16,1,@err,@src,@desc) RETURN -1 lb_Exit: EXEC sp_OADestroy @LogFile EXEC sp_OADestroy @DBFile EXEC sp_OADestroy @Dbsid EXEC sp_OADestroy @Dbid EXEC sp_OADestroy @srvid EXEC @err=sp_oamethod @srvid,'DisConnect' RETURN @err ;
SQL远程创建数据库的更多相关文章
- SQL Server2008创建数据库语法
use mastergo if exists(select * from sys.databases where name='MySchool') drop database MySchool -- ...
- SQL Server 创建数据库邮件
一. 背景 数据库发邮件通知数据库的运行状态(状态可以通过JOB形式获取)和信息,达到预警的效果. 二. 基础知识 msdb系统数据库保存有关Job,Database Mail,Nodifyicati ...
- 跟我学Windows Azure 二 使用SQL Azure创建数据库服务器,创建数据库,创建表
登陆Windows Azure门户 输入我们上一节课所注册的帐号及密码,点击登陆. 选择SQL 数据库,选择服务器 选择创建数据库服务器 设置访问数据库服务器的登陆帐号及密码 点击确定完成数据库服务器 ...
- 2-05使用SQL语句创建数据库2
使用SQL语句创建多个数据文件和日志文件: USE master--指向当前使用的数据库 GO--批处理的标志 CREATE DATABASE E_Market--创建E_market数据库 ON P ...
- sql server2008中怎样用sql语句创建数据库和数据表
这是简单用代码实现创建数据库和数据表的sql语句,如下: --调用系统数据库-- use master go /***防止你要创建的数据库同名,先把它删除掉****/ if Exists(select ...
- SQL语句创建数据库,SQL语句删除数据库,SQL语句创建表,SQL语句删除表,SQL语句添加约束,SQL语句删除约束
创建数据库: CREATE DATABASE Test --要创建的数据库名称 ON PRIMARY ( --数据库文件的具体描述 NAME='Test_data', --主数据文件的逻辑名称 FIL ...
- SQL Server 创建数据库快照
创建数据库快照: 必须在create database 命令中包括源数据库的每一个数据文件,原始逻辑名,新物理名与路径, 不能指定其他属性 create database db_snapshot_na ...
- MySQL数据库执行sql语句创建数据库和表提示The 'InnoDB' feature is disabled; you need MySQL built with 'InnoDB' to have it working
MySQL创建数据库 只想sql文件创建表时候提示 The 'InnoDB' feature is disabled; you need MySQL built with 'InnoDB' to ha ...
- [转]SQL Server 创建数据库邮件
本文转自:http://www.cnblogs.com/gaizai/p/3358958.html 一. 背景 数据库发邮件通知数据库的运行状态(状态可以通过JOB形式获取)和信息,达到预警的效果. ...
随机推荐
- Linux_服务
1.服务启动顺序 http://bbs.chinaunix.net/thread-1970916-1-1.html http://bbs.csdn.net/topics/240060477 2.Lin ...
- bootstrap学习笔记<十一>(导航条)
基础导航条.样式:class="navbar navbar-default",属性:role="navigation" <div class=" ...
- python中模块sys与os的一些常用方法
sys模块提供了访问或操作与python解释器相关方法与对象. 我们就列举出常用到的知识,以后,随着学习,不断补充. 几个常用到的动态对象: sys.argv,这是一个列表,它包含了所有传递给脚本的命 ...
- Android面试题整理【转载】
面试宝典(5) http://www.apkbus.com/android-115989-1-1.html 面试的几个回答技巧 http://blog.sina.com.cn/s/blog_ad ...
- 本地获取System权限CMD方法汇总(转)
本地获取System权限CMD方法汇总(转) 稍微整理了下,大概有三种方法可以本地获取system权限的cmd,但前提都是当前用户具备administrator权限. 下面列举的三种方法各有千秋,看你 ...
- Hbase之取出行数据指定部分(类似MySQL的Limit)
import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.CellScanner; import org. ...
- commonJS — 全局操作(for Window)
for Window github: https://github.com/laixiangran/commonJS/blob/master/src/forWindow.js 代码 /** * Cre ...
- 使用fragmenttabhost后,子fragment怎么获取ID?怎么用getSharedPreferences
使用fragmenttabhost后,子fragment怎么获取ID?怎么用getSharedPreferences public View onCreateView(LayoutInflater i ...
- 修改Mac]Bringing interface etch0:Device
OS版本:Red Hat Enterprise Linux AS4/5 网上有很多关于linux下修改MAC地址的方法,大多依葫芦画瓢,似乎都没验证过,达不到修改的目的. 经过我的详细测试,最终成功解 ...
- java,UDP协议简单实现
//UDP协议简单实现-----Serverpackage UDP; import java.net.DatagramPacket; import java.net.DatagramSocket; i ...