| Oracle® Objects for OLE Developer's Guide 11g Release 2 (11.2) for Microsoft Windows Part Number E12245-01 |
|
|
View PDF |
Applies To
Description
Returns whether or not the specified dynaset is updatable. Not available at design time and read-only at run time.
Usage
if_updatable = oradynaset.Updatable
Data Type
Integer (Boolean)
Remarks
Returns True if the rows in the specified dynaset can be updated; otherwise, it returns False.
The updatability of the resultant dynaset depends on the Oracle SQL rules of updatability, on the access you have been granted, and on the read-only flag of the CreateDynaset method.
To be updatable, three conditions must be met:
The SQL statement must refer to a simple column list or to the entire column list (*).
The SQL statement must not set the read-only flag of the options argument.
Oracle Database must permit ROWID references to the selected rows of the query.
Any SQL statement that does not meet these criteria is processed, but the results are not updatable and this property returns False.
Examples
This example demonstrates the use of the Updatable method. Copy and paste this code into the definition section of a form. Then, press F5.
Sub Form_Load ()
'Declare variables as OLE Objects.
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&)
'Create an updatable dynaset using a simple query.
Set OraDynaset = OraDatabase.CreateDynaset("select * from emp", 0&)
Call IsDynUpdatable(OraDynaset)
'Create a non-updatable dynaset using column aliases.
Set OraDynaset = OraDatabase.CreateDynaset("select ename EmployeeName," & _
"empno EmployeeNumber, sal Salary from emp", 0&)
Call IsDynUpdatable(OraDynaset)
'Create a non-updatable dynaset using a join.
Set OraDynaset = OraDatabase.CreateDynaset("select ename, emp.deptno," & _
"loc from emp, dept where emp.deptno = dept.deptno", 0&)
Call IsDynUpdatable(OraDynaset)
End Sub
Sub IsDynUpdatable (odyn As OraDynaset)
'Check to see if the dynaset is updatable.
If odyn.Updatable = True Then
MsgBox "Created an UPDATABLE dynaset from: '" & odyn.SQL & "'"
Else
MsgBox "Created a READ-ONLY dynaset from: '" & odyn.SQL & "'"
End If
End Sub
See Also:
RecordSource Property of Data Control