If a parameter has AutoBindDisabled
status, it is not automatically bound to a SQL or PL/SQL statement.
This example demonstrates the use of the AutoBindDisable
and AutoBindEnable
methods to prevent unnecessary parameter binding while creating various dynasets that use different parameters. Copy this code into the definition section of a form. Then, press F5.
Sub Form_Load () 'Declare variables Dim OraSession As OraSession Dim OraDatabase As OraDatabase Dim OraDynaset As OraDynaset 'Create the OraSession Object. Set OraSession = CreateObject("OracleInProcServer.XOraSession") 'Create the OraDatabase Object by opening a connection to Oracle. Set OraDatabase = OraSession. OpenDatabase("ExampleDb", _ "scott/tiger", 0&) 'Add the job input parameter with initial value MANAGER. OraDatabase.Parameters.Add "job", "MANAGER", 1 'Add the deptno input parameter with initial value 10. OraDatabase.Parameters.Add "deptno", 10, 1 'Disable the deptno parameter for now. OraDatabase.Parameters("deptno").AutoBindDisable 'Create the OraDynaset Object using the job parameter. Set OraDynaset = OraDatabase.CreateDynaset("select * from emp" & _ "where job = :job", 0&) 'Only employees with job=MANAGER will be contained in the dynaset. MsgBox "Employee #" & OraDynaset.Fields("empno").value & ", " & _ "Job=" & OraDynaset.Fields("job").value 'Enable the deptno parameter and disable the job parameter. OraDatabase.Parameters("deptno").AutoBindEnable OraDatabase.Parameters("job").AutoBindDisable 'Create the OraDynaset Object using the deptno parameter. Set OraDynaset = OraDatabase.CreateDynaset("select * from emp" & _ "where deptno = :deptno", 0&) 'Only employees with deptno=10 will be contained in the dynaset. MsgBox "Employee #" & OraDynaset.Fields("empno").value & "," & _ "DeptNo=" & OraDynaset.Fields("deptno").value End Sub
See Also:
AutoBindEnable Method