快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

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

   大家知道,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:/AssetCheck/sqltext/assetcheck.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.Close
end sub
\\\'-----------------------------------------------------------------------------------
public sub ClearSqlDmo()
 Set fso = Nothing
 Set goSQLServer = Nothing
end sub


 


返回类别: 教程
上一教程: ASP.NET可交互式位图窗体设计(4)
下一教程: ASP.NET中数据库的操作初步(2)

您可以阅读与" 一个用Wsh来控制SqlServer的Dcom的VBs"相关的教程:
· 一个用C#写的词法分析程序
· 用DataList 控制元件开发的一个简朴的留言本程序
· .Net里一个用于驱动摄像头的类
· 一个用c#写的扫描asp源码漏洞的应用程序(续)
· 一个用c#写的扫描asp源码漏洞的应用程序
    微笑服务 优质保证 索取样品