ADO Open Method
❮ Complete Recordset Object Reference
The Open method opens a database element that gives you access to records in
a table, the results of a query, or to a
saved Recordset.
Tip: Always close the Recordset object after
using it, to free system resources. Set the Recordset object to Nothing to completely eliminate
it from memory.
Syntax
objRecordset.Open source,actconn,cursortyp,locktyp,opt
Parameter |
Description |
source |
Optional. Specifies a data source. The source parameter may be one of the following:
- A URL
- A relative/full file path name
- A Command object
- An SQL statement
- A stored procedure
- A table name
|
actconn |
Optional. A connection string or a Connection object
|
cursortyp |
Optional. A CursorTypeEnum
value that specifies the type of cursor to use when opening a Recordset
object.
Default is
adOpenForwardOnly
|
locktyp |
Optional. A LockTypeEnum
value that specifies the type of locking on a Recordset object. Default is
adLockReadOnly
|
opt |
Optional. Specifies how to evaluate the source parameter if it
is not a Command object. Can be one or more CommandTypeEnum or
ExecuteOptionEnum values.
|
Example
Open an ADO Table Recordset:
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "Customers", conn
%>
Open an ADO SQL Recordset:
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "Select * from Customers", conn
%>
CursorTypeEnum Values
Constant |
Value |
Description |
adOpenUnspecified |
-1 |
Unspecified type of cursor |
adOpenForwardOnly |
0 |
Default. A forward-only cursor. This improves performance when you need to make only one pass
through a Recordset |
adOpenKeyset |
1 |
A keyset cursor. Like a dynamic cursor, except that
you can't see records that other users add, although records that
other users delete are inaccessible from your Recordset. Data
changes by other users are still visible. |
adOpenDynamic |
2 |
A dynamic cursor.
Additions, changes, and deletions by other users are visible, and all
types of movement through the Recordset are allowed |
adOpenStatic |
3 |
A static cursor. A static copy of a set of records
that you can use to find data or generate reports. Additions, changes,
or deletions by other users are not visible. |
LockTypeEnum Values
Constant |
Value |
Description |
adLockUnspecified |
-1 |
Unspecified type of lock. Clones inherits lock type from the original
Recordset. |
adLockReadOnly |
1 |
Default. Read-only records |
adLockPessimistic |
2 |
Pessimistic locking, record by record. The
provider lock records immediately
after editing |
adLockOptimistic |
3 |
Optimistic locking, record by record. The
provider lock records only when calling update |
adLockBatchOptimistic |
4 |
Optimistic batch updates. Required for batch update mode |
CommandTypeEnum Values
Constant |
Value |
Description |
adCmdUnspecified |
-1 |
Unspecified type of command |
adCmdText |
1 |
Evaluates CommandText as a textual definition of a command or stored procedure
call |
adCmdTable |
2 |
Evaluates CommandText as a table name whose
columns are returned by an SQL query |
adCmdStoredProc |
4 |
Evaluates CommandText as a stored procedure name |
adCmdUnknown |
8 |
Default. Unknown type of command |
adCmdFile |
256 |
Evaluates CommandText as the file name of a
persistently stored Recordset.
Used with Recordset.Open or Requery only. |
adCmdTableDirect |
512 |
Evaluates CommandText as a table name whose
columns are all returned. Used with Recordset.Open or Requery only.
To use the Seek method, the Recordset must be opened with adCmdTableDirect. Cannot be combined with the ExecuteOptionEnum value adAsyncExecute.
|
ExecuteOptionEnum Values
Constant |
Value |
Description |
adOptionUnspecified |
-1 |
Unspecified command |
adAsyncExecute |
16 |
The command should execute asynchronously. Cannot be combined with the CommandTypeEnum
value adCmdTableDirect
|
adAsyncFetch |
32 |
The remaining rows after the initial
quantity specified in the CacheSize property should be retrieved asynchronously |
adAsyncFetchNonBlocking |
64 |
The main thread never blocks while
retrieving. If the requested row has not been retrieved, the current
row automatically moves to the end of the file.
If you open a Recordset from a Stream containing a persistently stored Recordset,
adAsyncFetchNonBlocking will not have an effect; the operation will be synchronous and
blocking. adAsynchFetchNonBlocking has no effect
when the adCmdTableDirect option is used to open the Recordset |
adExecuteNoRecords |
128 |
The command text is a command or stored
procedure that does not return rows. If any rows are retrieved, they are discarded and not
returned.
adExecuteNoRecords can only be passed as an optional
parameter to the Command or Connection Execute method |
adExecuteStream |
256 |
The results of a command execution should
be returned as a stream.
adExecuteStream can only be passed as an optional parameter
to the Command Execute method
|
adExecuteRecord |
512 |
The CommandText is a command or
stored procedure that returns a single row which should be returned as
a Record object |
❮ Complete Recordset Object Reference
W3schools Pathfinder
Track your progress - it's free!