VBS脚本操作数据库的例子

 '更新组织结构

Set bpmobjConnection = CreateObject("ADODB.Connection")
   

'使用之前创建一个ODBC DSN 并制定用户名密码
        
bpmobjConnection.Open "DSN=oracle;","bpm","bpm"
      
 

' Specify base OU.
strOU = "OU=1_UserAccount,dc=cu,dc=local"

' Bind to base OU.
Set objOU = GetObject("LDAP://" & strOU)

' Enumerate groups in OU.
Call EnumOU(objOU, "")

 

'递归函数遍历

Function EnumOU(ByVal objADContainer, ByVal strOffset,ByVal upou)
' Recursive subroutine to enumerate groups in the OU
' and all child OU's.

Dim objGroup, objChild

' Output name of OU.
'Wscript.Echo strOffset & "OU: " & objADContainer.distinguishedName

 

' Enumerate child OU's.
objADContainer.Filter = Array("organizationalUnit")
For Each objChild In objADContainer

'update oracle

  'setup value    
      
       'FUEGO_MODIFIER="uaes"
       'FUEGO_CRTIME="sysdate"
       pou=upou
       pname=objChild.ou
      
   objCn.CursorLocation = 3   '参数都不能写成常量的形势,必须要写成整型

   Set adoComm = CreateObject("ADODB.Command")
       With adoComm
       .ActiveConnection = objCn
       .CommandType = 4
       .CommandText = "updatebpmou"
     

       Set para_trade = CreateObject("ADODB.Parameter")
       para_trade.Name = "pou"
       para_trade.Type = 200'这个参数是用于varchar2入参
       para_trade.Size = 1000
       para_trade.Direction = 1
       para_trade.Value = pou
       .Parameters.Append para_trade
      
           Set para_trade2 = CreateObject("ADODB.Parameter")
       para_trade2.Name = "pname"
       para_trade2.Type = 200'这个参数是用于varchar2入参
       para_trade2.Size = 1000
       para_trade2.Direction = 1
       para_trade2.Value = pname
       .Parameters.Append para_trade2


   rs=CreateObject("ADODB.Recordset")'存储过程返回的游标
     
   Set rs = .Execute()
   End With

'end update oracle


Call EnumOU(objChild, strOffset & " ",upou)
Next

End Function
 

 

      
      
       

bpmobjConnection.Close
       

 

你可能感兴趣的:(VBS脚本操作数据库的例子)