一个用Wsh来控制SqlServer的Dcom的VBs

2016-01-29 12:41 12 1 收藏

一个用Wsh来控制SqlServer的Dcom的VBs,一个用Wsh来控制SqlServer的Dcom的VBs

【 tulaoshi.com - ASP.NET 】


大家知道,wsh(windows script host)在windows平台下是用来代替bat文件的,以其灵活,功能强大许多人都用来处理自己的日常事物,但在调用excel,sqlerver方面可能不是太清楚了,今天这个例子就是 用vbscript来调用Dcom来生成数据库或删除数据库:
可以先建一个以.vbs结尾的文件,靠下面的东西到里面进去,双击就可以执行了,只要把里面的sql脚步的路径和Sqlserver的密码和账户改下就能用了
Dim str,ff,i ,intt,strtmp '定义普通变量 Dim goSQLServer,oDatabase '定义Sql_Dmo对象变量 Dim fso '定义文件对象
call main()'=============================================================================='==============================================================================public sub main() InitSqlDmo "."
DropDatabase "Assetcheck"
CreateDatabase "assetcheck"
'取得数据库 Set oDatabase = goSQLServer.Databases("assetCheck") 'msgbox oDatabase.PrimaryFilePath
'执行大量的Sql文本文件 ExecuteSqlFromFile "D:AssetChecksqltextassetcheck.sql"
ClearSqlDmo
If Err.Number <> 0 Then MsgBox "发生错误" MsgBox "脚本生成完成"end sub'-------------------------------------------------------------------------------'初始化连接对象public sub InitSqlDmo(aServerName) Set fso = CreateObject("Scripting.FileSystemObject") Set goSQLServer = CreateObject("SQLDMO.SQLServer") goSQLServer.Connect aServerName, "sa", ""end sub'-----------------------------------------------------------------------------'创建数据库public sub CreateDatabase(astrDataBaseName ) strtmp = " create DataBase " & astrDataBaseName goSQLServer.ExecuteImmediate strtmp end sub'删除数据库public sub DropDatabase(astrDataBaseName ) strtmp = " Drop DataBase " & astrDataBaseName goSQLServer.ExecuteImmediate strtmp end sub'------------------------------------------------------------------------------'执行脚本public sub ExecuteSqlFromFile(astrExecuteSqlFile ) Set ff = fso.OpenTextFile(astrExecuteSqlFile) Do While ff.AtEndOfStream <> True strtmp = ff.ReadLine str = str & vbCrLf & strtmp i = i + 1 If i >= 1500 And strtmp = "" Then i = 1 oDatabase.ExecuteImmediate (str) str = "" End If Loop

If Trim(str) <> "" Then oDatabase.ExecuteImmediate (str) End If
ff.Closeend sub'-----------------------------------------------------------------------------------public sub ClearSqlDmo() Set fso = Nothing Set goSQLServer = Nothingend sub

来源:http://www.tulaoshi.com/n/20160129/1487207.html

延伸阅读
if not exists (select * from dbo.sysobjects where id = object_id(N'[IndexTable]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) create table IndexTable(Ex char(20), num integer) go create procedure SetIndex @Ex char(20),@result char(30) output,@Fmt integer as   declare @num...
标签: Web开发
近来网上经常流传一些关于如何在父窗口控制只弹出一个子窗口 问题,我查看了一些,大部分都是只能解决部分或者很麻烦,还不算完美。比如有人是实现的这样,使用的是Cookie,以下是例子。  主页上做了一个弹出窗口,如何使其只弹出一次,返回主页时不再弹出了。  --------------------------------------------------------------...
AJAX(Asynchronous JavaScript And XML)是一种运用JavaScript和可扩展标记语言(XML),在网络浏览器和服务器之间传送或接受数据的技术。主要应用于Ria(Rich internet applications)的开发上。 xml问题终于在今天还是解决了。最后在FireFox里还是使用了Dom的一些老方法。我这里就具体解释一下方法吧. 代码: var XmlHttp; //用来...
标签: Web开发
使用这个存储过程可以实现分页的,新手可以看看哦! create proc proPage(@pageid int ,@pagesize int) as begin if (@pageid=1) begin  set rowcount @pagesize  select * from test order by id end else begin  declare @no1 int  declare @num int  sel...
标签: Web开发
很多语言都有类似php中的include和require功能的函数,而唯独javascript没有。  很早就想在js中实现类似的功能,尝试了很多次都没有成功,那天在google上搜索一些关于动态加载css文件的关键词时,发现一个blog(地址找不到了)上的一个为网页的head标签增加link元素的函数,于是就改了一下,写了这个函数。  用法:  include...

经验教程

548

收藏

65
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部