Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: a8b5bda7bd
Fetching contributors…

Cannot retrieve contributors at this time

15559 lines (15558 sloc) 902.502 kb
<?xml version="1.0"?>
<doc>
<assembly>
<name>Esent.Interop</name>
</assembly>
<members>
<member name="T:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO">
<summary>
The native version of the JET_OBJECTINFO structure.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO.cbStruct">
<summary>
Size of the structure.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO.objtyp">
<summary>
Holds the JET_OBJTYP of the structure. Currently only tables will be
returned (that is, <see cref="F:Microsoft.Isam.Esent.Interop.JET_objtyp.Table"/>).
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO.ignored1">
<summary>
Obsolete. Do not use.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO.ignored2">
<summary>
Obsolete. Do not use.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO.grbit">
<summary>
A group of bits that contain table options.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO.flags">
<summary>
Table type flags.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO.cRecord">
<summary>
Number of records in the table.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO.cPage">
<summary>
Number of pages used by the table.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO">
<summary>
The JET_OBJECTINFO structure holds information about an object.
Tables are the only object types that are currently supported.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO.SetFromNativeObjectinfo(Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO)">
<summary>
Sets the fields of the object from a native JET_OBJECTINFO struct.
</summary>
<param name="value">
The native objectlist to set the values from.
</param>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO.objtyp">
<summary>
Gets the JET_OBJTYP of the table. Currently only tables will be
returned (that is, <see cref="F:Microsoft.Isam.Esent.Interop.JET_objtyp.Table"/>).
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO.grbit">
<summary>
Gets the table options.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO.flags">
<summary>
Gets the table type flags.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO.cRecord">
<summary>
Gets the number of records in the table.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO.cPage">
<summary>
Gets the number of pages used by the table.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.NATIVE_INDEXLIST">
<summary>
The native version of the JET_INDEXLIST structure.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.JET_INDEXLIST">
<summary>
Information about a temporary table containing information
about all indexes for a given table.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.SetFromNativeIndexlist(Microsoft.Isam.Esent.Interop.NATIVE_INDEXLIST)">
<summary>
Sets the fields of the object from a native JET_INDEXLIST struct.
</summary>
<param name="value">
The native indexlist to set the values from.
</param>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.tableid">
<summary>
Gets tableid of the temporary table. This should be closed
when the table is no longer needed.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.cRecord">
<summary>
Gets the number of records in the temporary table.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidindexname">
<summary>
Gets the columnid of the column in the temporary table which
stores the name of the index.
The column is of type JET_coltyp.Text.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidgrbitIndex">
<summary>
Gets the columnid of the column in the temporary table which
stores the the grbits used on the index. See <see cref="T:Microsoft.Isam.Esent.Interop.CreateIndexGrbit"/>.
The column is of type JET_coltyp.Long.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidcColumn">
<summary>
Gets the columnid of the column in the temporary table which
stores the number of columns in the index key.
The column is of type JET_coltyp.Long.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidiColumn">
<summary>
Gets the columnid of the column in the temporary table which
stores the index of of this column in the index key.
The column is of type JET_coltyp.Long.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidcolumnid">
<summary>
Gets the columnid of the column in the temporary table which
stores the columnid of the column being indexed.
The column is of type JET_coltyp.Long.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidcoltyp">
<summary>
Gets the columnid of the column in the temporary table which
stores the column type of the column being indexed.
The column is of type JET_coltyp.Long.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidLangid">
<summary>
Gets the columnid of the column in the temporary table which
stores the language id (LCID) of the index.
The column is of type JET_coltyp.Short.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidCp">
<summary>
Gets the columnid of the column in the temporary table which
stores the code page of the indexed column.
The column is of type JET_coltyp.Short.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidgrbitColumn">
<summary>
Gets the columnid of the column in the temporary table which
stores the grbit that apply to the indexed column. See <see cref="T:Microsoft.Isam.Esent.Interop.IndexKeyGrbit"/>.
The column is of type JET_coltyp.Long.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidcolumnname">
<summary>
Gets the columnid of the column in the temporary table which
stores the grbit that apply to the indexed column. See <see cref="T:Microsoft.Isam.Esent.Interop.IndexKeyGrbit"/>.
The column is of type JET_coltyp.Text.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidLCMapFlags">
<summary>
Gets the columnid of the column in the temporary table which
stores the unicode normalization flags for the index.
The column is of type JET_coltyp.Long.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.Vista.VistaApi">
<summary>
ESENT APIs that were first supported in Windows Vista.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)">
<summary>
Creates a temporary table with a single index. A temporary table
stores and retrieves records just like an ordinary table created
using JetCreateTableColumnIndex. However, temporary tables are
much faster than ordinary tables due to their volatile nature.
They can also be used to very quickly sort and perform duplicate
removal on record sets when accessed in a purely sequential manner.
Also see
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>.
</summary>
<remarks>
Introduced in Windows Vista. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>
for earlier versions of Esent.
</remarks>
<param name="sesid">The session to use.</param>
<param name="temporarytable">
Description of the temporary table to create on input. After a
successful call, the structure contains the handle to the temporary
table and column identifications. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>
to free the temporary table when finished.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetGetThreadStats(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS@)">
<summary>
Retrieves performance information from the database engine for the
current thread. Multiple calls can be used to collect statistics
that reflect the activity of the database engine on this thread
between those calls.
</summary>
<param name="threadstats">Returns the thread statistics data.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOSSnapshotEnd(Microsoft.Isam.Esent.Interop.JET_OSSNAPID,Microsoft.Isam.Esent.Interop.Vista.SnapshotEndGrbit)">
<summary>
Notifies the engine that the snapshot session finished.
</summary>
<param name="snapid">The identifier of the snapshot session.</param>
<param name="grbit">Snapshot end options.</param>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS">
<summary>
Contains cumulative statistics on the work performed by the database
engine on the current thread. This information is returned via
<see cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetGetThreadStats(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS@)"/>.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.op_Addition(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS,Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS)">
<summary>
Add the stats in two JET_THREADSTATS structures.
</summary>
<param name="t1">The first JET_THREADSTATS.</param>
<param name="t2">The second JET_THREADSTATS.</param>
<returns>A JET_THREADSTATS containing the result of adding the stats in t1 and t2.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.op_Subtraction(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS,Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS)">
<summary>
Calculate the difference in stats between two JET_THREADSTATS structures.
</summary>
<param name="t1">The first JET_THREADSTATS.</param>
<param name="t2">The second JET_THREADSTATS.</param>
<returns>A JET_THREADSTATS containing the difference in stats between t1 and t2.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.ToString">
<summary>
Gets a string representation of this object.
</summary>
<returns>A string representation of this object.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.SetFromNativeThreadstats(Microsoft.Isam.Esent.Interop.Vista.NATIVE_THREADSTATS)">
<summary>
Sets the fields of the object from a NATIVE_THREADSTATS struct.
</summary>
<param name="value">
The native threadstats to set the values from.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.GetPluralS(System.Int32)">
<summary>
Get the plural suffix ('s') for the given number.
</summary>
<param name="n">The number.</param>
<returns>The letter 's' if n is greater than 1.</returns>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPageReferenced">
<summary>
Gets the total number of database pages visited by the database
engine on the current thread.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPageRead">
<summary>
Gets the total number of database pages fetched from disk by the
database engine on the current thread.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPagePreread">
<summary>
Gets the total number of database pages prefetched from disk by
the database engine on the current thread.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPageDirtied">
<summary>
Gets the total number of database pages, with no unwritten changes,
that have been modified by the database engine on the current thread.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPageRedirtied">
<summary>
Gets the total number of database pages, with unwritten changes, that
have been modified by the database engine on the current thread.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cLogRecord">
<summary>
Gets the total number of transaction log records that have been
generated by the database engine on the current thread.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cbLogRecord">
<summary>
Gets the total size in bytes of transaction log records that
have been generated by the database engine on the current thread.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.Vista.NATIVE_THREADSTATS">
<summary>
The native version of the JET_THREADSTATS structure.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.NATIVE_RECPOS">
<summary>
The native version of the JET_RETINFO structure.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_RECPOS.Size">
<summary>
Size of NATIVE_RECPOS structures.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_RECPOS.cbStruct">
<summary>
Size of this structure.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_RECPOS.centriesLT">
<summary>
Approximate number of index entries less than the key.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_RECPOS.centriesInRange">
<summary>
Approximate number of entries in the index range.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.NATIVE_RECPOS.centriesTotal">
<summary>
Approximate number of entries in the index.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.JET_RECPOS">
<summary>
Represents a fractional position within an index. This is used by JetGotoPosition
and JetGetRecordPosition.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.JET_RECPOS.GetNativeRecpos">
<summary>
Get a NATIVE_RECPOS structure representing the object.
</summary>
<returns>A NATIVE_RECPOS whose members match the class.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.JET_RECPOS.SetFromNativeRecpos(Microsoft.Isam.Esent.Interop.NATIVE_RECPOS)">
<summary>
Sets the fields of the object from a NATIVE_RECPOS structure.
</summary>
<param name="value">The NATIVE_RECPOS which will be used to set the fields.</param>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_RECPOS.centriesLT">
<summary>
Gets or sets the approximate number of index entries less than the key.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.JET_RECPOS.centriesTotal">
<summary>
Gets or sets the approximate number of entries in the index.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.JET_ObjInfo">
<summary>
Info levels for retrieving object info.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.JET_ObjInfo.ListNoStats">
<summary>
Retrieve a JET_OBJINFOLIST containing information
about all object in the table.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.EsentException">
<summary>
Base class for ESENT exceptions.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.EsentException.#ctor">
<summary>
Initializes a new instance of the EsentException class.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.EsentException.#ctor(System.String)">
<summary>
Initializes a new instance of the EsentException class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Microsoft.Isam.Esent.EsentException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the EsentException class with a specified error message and
a reference to the inner exception that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">
The exception that is the cause of the current exception, or a null reference
(Nothing in Visual Basic) if no inner exception is specified.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.EsentException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the EsentException class. This constructor
is used to deserialize a serialized exception.
</summary>
<param name="info">The data needed to deserialize the object.</param>
<param name="context">The deserialization context.</param>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.EsentVersion">
<summary>
Gives information about the version of esent being used.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsServer2003Features">
<summary>
Gets a value indicating whether the current version of esent
supports features available in the Windows Server 2003 version of
esent.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsVistaFeatures">
<summary>
Gets a value indicating whether the current version of esent
supports features available in the Windows Vista version of
esent.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsWindows7Features">
<summary>
Gets a value indicating whether the current version of esent
supports features available in the Windows 7 version of
esent.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsUnicodePaths">
<summary>
Gets a value indicating whether the current version of esent
can use non-ASCII paths to access databases.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsLargeKeys">
<summary>
Gets a value indicating whether large (&gt; 255 byte) keys are supported.
The key size for an index can be specified in the <see cref="T:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE"/>
object.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.Capabilities">
<summary>
Gets a description of the current Esent capabilities.
</summary>
<remarks>
We allow this to be set separately so that capabilities can
be downgraded for testing.
</remarks>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.Implementation.GCHandleCollection">
<summary>
A collection of GCHandles for pinned objects. The handles
are freed when this object is disposed.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.Implementation.GCHandleCollection.handles">
<summary>
The handles of the objects being pinned.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Implementation.GCHandleCollection.Dispose">
<summary>
Disposes of the object.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Implementation.GCHandleCollection.Add(System.Object)">
<summary>
Add an object to the handle collection. This automatically
pins the object.
</summary>
<param name="value">The object to pin.</param>
<returns>
The address of the pinned object. This is valid until the
GCHandleCollection is disposed.
</returns>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.BytesColumnValue">
<summary>
A byte array column value.
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.ColumnValue">
<summary>
Base class for objects that represent a column value to be set.
</summary>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.ColumnValue.memoryCache">
<summary>
Cached retrieve buffers.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.#ctor">
<summary>
Initializes a new instance of the ColumnValue class.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.RetrieveColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[])">
<summary>
Recursive RetrieveColumns method for data pinning. This should pin a buffer and
call the inherited RetrieveColumns method.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">
The table to retrieve the columns from.
</param>
<param name="columnValues">
Column values to retrieve.
</param>
<returns>An error code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.SetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[],Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN*,System.Int32)">
<summary>
Recursive SetColumns method for data pinning. This should populate the buffer and
call the inherited SetColumns method.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">
The table to set the columns in. An update should be prepared.
</param>
<param name="columnValues">
Column values to set.
</param>
<param name="nativeColumns">
Structures to put the pinned data in.
</param>
<param name="i">Offset of this object in the array.</param>
<returns>An error code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.SetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[],Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN*,System.Int32,System.Void*,System.Int32,System.Boolean)">
<summary>
Recursive SetColumns function used to pin data.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">
The table to set the columns in. An update should be prepared.
</param>
<param name="columnValues">
Column values to set.
</param>
<param name="nativeColumns">
Structures to put the pinned data in.
</param>
<param name="i">Offset of this object in the array.</param>
<param name="buffer">The buffer for this object.</param>
<param name="bufferSize">Size of the buffer for ths object.</param>
<param name="hasValue">True if this object is non null.</param>
<returns>An error code.</returns>
<remarks>
This is marked as internal because it uses the NATIVE_SETCOLUMN type
which is also marked as internal. It should be treated as a protected
method though.
</remarks>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.GetValueFromBytes(System.Byte[],System.Int32,System.Int32,System.Int32)">
<summary>
Given data retrieved from ESENT, decode the data and set the value in the ColumnValue object.
</summary>
<param name="value">An array of bytes.</param>
<param name="startIndex">The starting position within the bytes.</param>
<param name="count">The number of bytes to decode.</param>
<param name="err">The error returned from ESENT.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.RetrieveTruncatedBuffers(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[],Microsoft.Isam.Esent.Interop.NATIVE_RETRIEVECOLUMN*)">
<summary>
Retrieve the value for columns whose buffers were truncated.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to use.</param>
<param name="columnValues">The column values.</param>
<param name="nativeRetrievecolumns">
The native retrieve columns that match the column values.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.MakeNativeSetColumn(Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN@)">
<summary>
Create a native SetColumn from this object.
</summary>
<param name="setcolumn">The native setcolumn structure to fill in.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.MakeNativeRetrieveColumn(Microsoft.Isam.Esent.Interop.NATIVE_RETRIEVECOLUMN@)">
<summary>
Create a native RetrieveColumn from this object.
</summary>
<param name="retrievecolumn">
The retrieve column structure to fill in.
</param>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.Columnid">
<summary>
Gets or sets the columnid to be set or retrieved.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.ValueAsObject">
<summary>
Gets the last set or retrieved value of the column. The
value is returned as a generic object.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.SetGrbit">
<summary>
Gets or sets column update options.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.RetrieveGrbit">
<summary>
Gets or sets column retrieval options.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.ItagSequence">
<summary>
Gets or sets the column itag sequence.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.Error">
<summary>
Gets the error generated by retrieving or setting this column.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.Size">
<summary>
Gets the size of the value in the column. This returns 0 for
variable sized columns (i.e. binary and string).
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.BytesColumnValue.SetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[],Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN*,System.Int32)">
<summary>
Recursive SetColumns method for data pinning. This populates the buffer and
calls the inherited SetColumns method.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">
The table to set the columns in. An update should be prepared.
</param>
<param name="columnValues">
Column values to set.
</param>
<param name="nativeColumns">
Structures to put the pinned data in.
</param>
<param name="i">Offset of this object in the array.</param>
<returns>An error code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.BytesColumnValue.GetValueFromBytes(System.Byte[],System.Int32,System.Int32,System.Int32)">
<summary>
Given data retrieved from ESENT, decode the data and set the value in the ColumnValue object.
</summary>
<param name="value">An array of bytes.</param>
<param name="startIndex">The starting position within the bytes.</param>
<param name="count">The number of bytes to decode.</param>
<param name="err">The error returned from ESENT.</param>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.BytesColumnValue.ValueAsObject">
<summary>
Gets the last set or retrieved value of the column. The
value is returned as a generic object.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.BytesColumnValue.Value">
<summary>
Gets or sets the value of the column. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.SetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[])"/> to update a
record with the column value.
</summary>
</member>
<member name="P:Microsoft.Isam.Esent.Interop.BytesColumnValue.Size">
<summary>
Gets the size of the value in the column. This returns 0 for
variable sized columns (i.e. binary and string).
</summary>
</member>
<member name="T:Microsoft.Isam.Esent.Interop.Api">
<summary>
Helper methods for the ESENT API. These do data conversion for
setting columns.
</summary>
<summary>
Helper methods for the ESENT API. These methods deal with database
meta-data.
</summary>
<summary>
Internal-only methods of the Api.
</summary>
<summary>
Helper methods for the ESENT API. These wrap JetMakeKey.
</summary>
<summary>
Managed versions of the ESENT Api. This class contains static methods corresponding
with the unmanaged ESENT Api. These methods throw exceptions when errors are returned.
</summary>
<summary>
Helper methods for the ESENT API. These do data conversion for
JetMakeKey.
</summary>
<summary>
Helper methods for the ESENT API. These aren't interop versions
of the API, but encapsulate very common uses of the functions.
</summary>
<summary>
Helper methods for the ESENT API. These aren't interop versions
of the API, but encapsulate very common uses of the functions.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.String,System.Text.Encoding)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
<param name="encoding">The encoding used to convert the string.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.String,System.Text.Encoding,Microsoft.Isam.Esent.Interop.SetColumnGrbit)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
<param name="encoding">The encoding used to convert the string.</param>
<param name="grbit">SetColumn options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[])">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Boolean)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int16)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int32)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int64)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Guid)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.DateTime)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Single)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Double)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.EscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int32)">
<summary>
Perform atomic addition on one column. The column must be of type
<see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Long"/>. This function allows multiple sessions to update the
same record concurrently without conflicts.
</summary>
<remarks>
This method wraps <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetEscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit)"/>.
</remarks>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update.</param>
<param name="columnid">The column to update. This must be an escrow-updatable column.</param>
<param name="delta">The delta to apply to the column.</param>
<returns>The current value of the column as stored in the database (versioning is ignored).</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.UInt16)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.UInt32)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.UInt64)">
<summary>
Modifies a single column value in a modified record to be inserted or to
update the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SerializeObjectToColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Object)">
<summary>
Write a serialized form of an object to a column.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to write to. An update should be prepared.</param>
<param name="columnid">The column to write to.</param>
<param name="value">The object to write. The object must be serializable.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[])">
<summary>
Sets columns from ColumnValue objects.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="values">The values to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.CheckEncodingIsValid(System.Text.Encoding)">
<summary>
Verifies that the given encoding is valid for setting/retrieving data. Only
the ASCII and Unicode encodings are allowed. An <see cref="T:System.ArgumentOutOfRangeException"/>
is thrown if the encoding isn't valid.
</summary>
<param name="encoding">The encoding to check.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.TryOpenTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,Microsoft.Isam.Esent.Interop.OpenTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@)">
<summary>
Try to open a table.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database to look for the table in.</param>
<param name="tablename">The name of the table.</param>
<param name="grbit">Table open options.</param>
<param name="tableid">Returns the opened tableid.</param>
<returns>True if the table was opened, false if the table doesn't exist.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetColumnDictionary(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Creates a dictionary which maps column names to their column IDs.
</summary>
<param name="sesid">The sesid to use.</param>
<param name="tableid">The table to retrieve the information for.</param>
<returns>A dictionary mapping column names to column IDs.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableColumnid(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)">
<summary>
Get the columnid of the specified column.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table containing the column.</param>
<param name="columnName">The name of the column.</param>
<returns>The id of the column.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Iterates over all the columns in the table, returning information about each one.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to retrieve column information for.</param>
<returns>An iterator over ColumnInfo for each column in the table.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String)">
<summary>
Iterates over all the columns in the table, returning information about each one.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database containing the table.</param>
<param name="tablename">The name of the table.</param>
<returns>An iterator over ColumnInfo for each column in the table.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Iterates over all the indexes in the table, returning information about each one.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to retrieve index information for.</param>
<returns>An iterator over an IndexInfo for each index in the table.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String)">
<summary>
Iterates over all the indexs in the table, returning information about each one.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database containing the table.</param>
<param name="tablename">The name of the table.</param>
<returns>An iterator over an IndexInfo for each index in the table.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableNames(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID)">
<summary>
Returns the names of the tables in the database.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database containing the table.</param>
<returns>An iterator over the names of the tables in the database.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.EnumerateIndexInfos(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXLIST)">
<summary>
Iterates over the information in the JET_INDEXLIST, returning information about each index.
The table in the indexlist is closed when finished.
</summary>
<param name="sesid">The session to use.</param>
<param name="indexlist">The indexlist to iterate over.</param>
<returns>An iterator over IndexInfo for each index described in the JET_INDEXLIST.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetIndexInfoFromIndexlist(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXLIST)">
<summary>
Create an IndexInfo object from the data in the current JET_INDEXLIST entry.
</summary>
<param name="sesid">The session to use.</param>
<param name="indexlist">The indexlist to take the data from.</param>
<returns>An IndexInfo object containing the information from that record.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetIndexSegmentsFromIndexlist(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXLIST)">
<summary>
Create an array of IndexSegment objects from the data in the current JET_INDEXLIST entry.
</summary>
<param name="sesid">The session to use.</param>
<param name="indexlist">The indexlist to take the data from.</param>
<returns>An array of IndexSegment objects containing the information for the current index.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.EnumerateColumnInfos(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNLIST)">
<summary>
Iterates over the information in the JET_COLUMNLIST, returning information about each column.
The table in the columnlist is closed when finished.
</summary>
<param name="sesid">The session to use.</param>
<param name="columnlist">The columnlist to iterate over.</param>
<returns>An iterator over ColumnInfo for each column described in the JET_COLUMNLIST.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetColumnInfoFromColumnlist(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNLIST)">
<summary>
Create a ColumnInfo object from the data in the current JET_COLUMNLIST
entry.
</summary>
<param name="sesid">The session to use.</param>
<param name="columnlist">The columnlist to take the data from.</param>
<returns>A ColumnInfo object containing the information from that record.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)">
<summary>
The JetSetColumn function modifies a single column value in a modified record to be inserted or to
update the current record. It can overwrite an existing value, add a new value to a sequence of
values in a multi-valued column, remove a value from a sequence of values in a multi-valued column,
or update all or part of a long value (a column of type <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongText"/>
or <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongBinary"/>).
</summary>
<remarks>
This is an internal-only version of the API that takes a data buffer and an offset into the buffer.
</remarks>
<param name="sesid">The session which is performing the update.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
<param name="dataSize">The size of data to set.</param>
<param name="dataOffset">The offset in the data buffer to set data from.</param>
<param name="grbit">SetColumn options.</param>
<param name="setinfo">Used to specify itag or long-value offset.</param>
<returns>A warning value.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit,Microsoft.Isam.Esent.Interop.JET_RETINFO)">
<summary>
Retrieves a single column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
Alternatively, this function can retrieve a column from a record being created
in the cursor copy buffer. This function can also retrieve column data from an
index entry that references the current record. In addition to retrieving the
actual column value, JetRetrieveColumn can also be used to retrieve the size
of a column, before retrieving the column data itself so that application
buffers can be sized appropriately.
</summary>
<remarks>
This is an internal method that takes a buffer offset as well as size.
</remarks>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<param name="data">The data buffer to be retrieved into.</param>
<param name="dataSize">The size of the data buffer.</param>
<param name="dataOffset">Offset into the data buffer to read data into.</param>
<param name="actualDataSize">Returns the actual size of the data buffer.</param>
<param name="grbit">Retrieve column options.</param>
<param name="retinfo">
If pretinfo is give as NULL then the function behaves as though an itagSequence
of 1 and an ibLongValue of 0 (zero) were given. This causes column retrieval to
retrieve the first value of a multi-valued column, and to retrieve long data at
offset 0 (zero).
</param>
<returns>An ESENT warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.IntPtr,System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit,Microsoft.Isam.Esent.Interop.JET_RETINFO)">
<summary>
Retrieves a single column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
Alternatively, this function can retrieve a column from a record being created
in the cursor copy buffer. This function can also retrieve column data from an
index entry that references the current record. In addition to retrieving the
actual column value, JetRetrieveColumn can also be used to retrieve the size
of a column, before retrieving the column data itself so that application
buffers can be sized appropriately.
</summary>
<remarks>
This is an internal-use version that takes an IntPtr.
</remarks>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<param name="data">The data buffer to be retrieved into.</param>
<param name="dataSize">The size of the data buffer.</param>
<param name="actualDataSize">Returns the actual size of the data buffer.</param>
<param name="grbit">Retrieve column options.</param>
<param name="retinfo">
If pretinfo is give as NULL then the function behaves as though an itagSequence
of 1 and an ibLongValue of 0 (zero) were given. This causes column retrieval to
retrieve the first value of a multi-valued column, and to retrieve long data at
offset 0 (zero).
</param>
<returns>An ESENT warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetMakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs search keys that may then be used by JetSeek and JetSetIndexRange.
</summary>
<remarks>
This is an internal (unsafe) version that takes an IntPtr.
</remarks>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="dataSize">Size of the data.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)">
<summary>
The JetSetColumn function modifies a single column value in a modified record to be inserted or to
update the current record. It can overwrite an existing value, add a new value to a sequence of
values in a multi-valued column, remove a value from a sequence of values in a multi-valued column,
or update all or part of a long value, a column of type JET_coltyp.LongText or JET_coltyp.LongBinary.
</summary>
<remarks>
This method takes an IntPtr and is intended for internal use only.
</remarks>
<param name="sesid">The session which is performing the update.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
<param name="dataSize">The size of data to set.</param>
<param name="grbit">SetColumn options.</param>
<param name="setinfo">Used to specify itag or long-value offset.</param>
<returns>A warning value.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.TryGetLock(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.GetLockGrbit)">
<summary>
Explicitly reserve the ability to update a row, write lock, or to explicitly prevent a row from
being updated by any other session, read lock. Normally, row write locks are acquired implicitly as a
result of updating rows. Read locks are usually not required because of record versioning. However,
in some cases a transaction may desire to explicitly lock a row to enforce serialization, or to ensure
that a subsequent operation will succeed.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to use. A lock will be acquired on the current record.</param>
<param name="grbit">Lock options, use this to specify which type of lock to obtain.</param>
<returns>
True if the lock was obtained, false otherwise. An exception is thrown if an unexpected
error is encountered.
</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.#cctor">
<summary>
Initializes static members of the Api class.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String)">
<summary>
Allocates a new instance of the database engine.
</summary>
<param name="instance">Returns the new instance.</param>
<param name="name">The name of the instance. Names must be unique.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateInstance2(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String,System.String,Microsoft.Isam.Esent.Interop.CreateInstanceGrbit)">
<summary>
Allocate a new instance of the database engine for use in a single
process, with a display name specified.
</summary>
<param name="instance">Returns the newly create instance.</param>
<param name="name">
Specifies a unique string identifier for the instance to be created.
This string must be unique within a given process hosting the
database engine.
</param>
<param name="displayName">
A display name for the instance to be created. This will be used
in eventlog entries.
</param>
<param name="grbit">Creation options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetInit(Microsoft.Isam.Esent.Interop.JET_INSTANCE@)">
<summary>
Initialize the ESENT database engine.
</summary>
<param name="instance">
The instance to initialize. If an instance hasn't been
allocated then a new one is created and the engine
will operate in single-instance mode.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetInit2(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,Microsoft.Isam.Esent.Interop.InitGrbit)">
<summary>
Initialize the ESENT database engine.
</summary>
<param name="instance">
The instance to initialize. If an instance hasn't been
allocated then a new one is created and the engine
will operate in single-instance mode.
</param>
<param name="grbit">
Initialization options.
</param>
<returns>
A warning code.
</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetInstanceInfo(System.Int32@,Microsoft.Isam.Esent.Interop.JET_INSTANCE_INFO[]@)">
<summary>
Retrieves information about the instances that are running.
</summary>
<param name="numInstances">
Returns the number of instances.
</param>
<param name="instances">
Returns an array of instance info objects, one for each running
instance.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetStopBackupInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
<summary>
Prevents streaming backup-related activity from continuing on a
specific running instance, thus ending the streaming backup in
a predictable way.
</summary>
<param name="instance">The instance to use.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetStopServiceInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
<summary>
Prepares an instance for termination.
</summary>
<param name="instance">The (running) instance to use.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetTerm(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
<summary>
Terminate an instance that was created with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetInit(Microsoft.Isam.Esent.Interop.JET_INSTANCE@)"/> or
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCreateInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String)"/>.
</summary>
<param name="instance">The instance to terminate.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetTerm2(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.TermGrbit)">
<summary>
Terminate an instance that was created with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetInit(Microsoft.Isam.Esent.Interop.JET_INSTANCE@)"/> or
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCreateInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String)"/>.
</summary>
<param name="instance">The instance to terminate.</param>
<param name="grbit">Termination options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetSystemParameter(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_param,System.Int32,System.String)">
<summary>
Sets database configuration options.
</summary>
<param name="instance">
The instance to set the option on or <see cref="P:Microsoft.Isam.Esent.Interop.JET_INSTANCE.Nil"/>
to set the option on all instances.
</param>
<param name="sesid">The session to use.</param>
<param name="paramid">The parameter to set.</param>
<param name="paramValue">The value of the parameter to set, if the parameter is an integer type.</param>
<param name="paramString">The value of the parameter to set, if the parameter is a string type.</param>
<returns>An ESENT warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetSystemParameter(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_param,Microsoft.Isam.Esent.Interop.JET_CALLBACK,System.String)">
<summary>
Sets database configuration options.
</summary>
<param name="instance">
The instance to set the option on or <see cref="P:Microsoft.Isam.Esent.Interop.JET_INSTANCE.Nil"/>
to set the option on all instances.
</param>
<param name="sesid">The session to use.</param>
<param name="paramid">The parameter to set.</param>
<param name="paramValue">The value of the parameter to set, if the parameter is an integer type.</param>
<param name="paramString">The value of the parameter to set, if the parameter is a string type.</param>
<returns>An ESENT warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetSystemParameter(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_param,System.Int32@,System.String@,System.Int32)">
<summary>
Gets database configuration options.
</summary>
<param name="instance">The instance to retrieve the options from.</param>
<param name="sesid">The session to use.</param>
<param name="paramid">The parameter to get.</param>
<param name="paramValue">Returns the value of the parameter, if the value is an integer.</param>
<param name="paramString">Returns the value of the parameter, if the value is a string.</param>
<param name="maxParam">The maximum size of the parameter string.</param>
<returns>An ESENT warning code.</returns>
<remarks>
<see cref="F:Microsoft.Isam.Esent.Interop.JET_param.ErrorToString"/> passes in the error number in the paramValue, which is why it is
a ref parameter and not an out parameter.
</remarks>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetVersion(Microsoft.Isam.Esent.Interop.JET_SESID,System.UInt32@)">
<summary>
Retrieves the version of the database engine.
</summary>
<param name="sesid">The session to use.</param>
<param name="version">Returns the version number of the database engine.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit)">
<summary>
Creates and attaches a database file.
</summary>
<param name="sesid">The session to use.</param>
<param name="database">The path to the database file to create.</param>
<param name="connect">The parameter is not used.</param>
<param name="dbid">Returns the dbid of the new database.</param>
<param name="grbit">Database creation options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateDatabase2(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.Int32,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit)">
<summary>
Creates and attaches a database file with a maximum database size specified.
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.Int32,Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="database">The path to the database file to create.</param>
<param name="maxPages">
The maximum size, in database pages, of the database. Passing 0 means there is
no enforced maximum.
</param>
<param name="dbid">Returns the dbid of the new database.</param>
<param name="grbit">Database creation options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit)">
<summary>
Attaches a database file for use with a database instance. In order to use the
database, it will need to be subsequently opened with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="database">The database to attach.</param>
<param name="grbit">Attach options.</param>
<returns>An ESENT warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.Int32,Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit)">
<summary>
Attaches a database file for use with a database instance. In order to use the
database, it will need to be subsequently opened with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="database">The database to attach.</param>
<param name="maxPages">
The maximum size, in database pages, of the database. Passing 0 means there is
no enforced maximum.
</param>
<param name="grbit">Attach options.</param>
<returns>An ESENT warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit)">
<summary>
Opens a database previously attached with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit)"/>,
for use with a database session. This function can be called multiple times
for the same database.
</summary>
<param name="sesid">The session that is opening the database.</param>
<param name="database">The database to open.</param>
<param name="connect">Reserved for future use.</param>
<param name="dbid">Returns the dbid of the attached database.</param>
<param name="grbit">Open database options.</param>
<returns>An ESENT warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCloseDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,Microsoft.Isam.Esent.Interop.CloseDatabaseGrbit)">
<summary>
Closes a database file that was previously opened with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit)"/> or
created with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCreateDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database to close.</param>
<param name="grbit">Close options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDetachDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String)">
<summary>
Releases a database file that was previously attached to a database session.
</summary>
<param name="sesid">The database session to use.</param>
<param name="database">The database to detach.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCompact(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_PFNSTATUS,Microsoft.Isam.Esent.Interop.JET_CONVERT,Microsoft.Isam.Esent.Interop.CompactGrbit)">
<summary>
Makes a copy of an existing database. The copy is compacted to a
state optimal for usage. Data in the copied data will be packed
according to the measures chosen for the indexes at index create.
In this way, compacted data may be stored as densely as possible.
Alternatively, compacted data may reserve space for subsequent
record growth or index insertions.
</summary>
<param name="sesid">The session to use for the call.</param>
<param name="sourceDatabase">The source database that will be compacted.</param>
<param name="destinationDatabase">The name to use for the compacted database.</param>
<param name="statusCallback">
A callback function that can be called periodically through the
database compact operation to report progress.
</param>
<param name="ignored">
This parameter is ignored and should be null.
</param>
<param name="grbit">Compact options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGrowDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.Int32,System.Int32@)">
<summary>
Extends the size of a database that is currently open.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database to grow.</param>
<param name="desiredPages">The desired size of the database, in pages.</param>
<param name="actualPages">
The size of the database, in pages, after the call.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetDatabaseSize(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.Int32,System.Int32@)">
<summary>
Sets the size of an unopened database file.
</summary>
<param name="sesid">The session to use.</param>
<param name="database">The name of the database.</param>
<param name="desiredPages">The desired size of the database, in pages.</param>
<param name="actualPages">
The size of the database, in pages, after the call.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetBackupInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,System.String,Microsoft.Isam.Esent.Interop.BackupGrbit,Microsoft.Isam.Esent.Interop.JET_PFNSTATUS)">
<summary>
Performs a streaming backup of an instance, including all the attached
databases, to a directory. With multiple backup methods supported by
the engine, this is the simplest and most encapsulated function.
</summary>
<param name="instance">The instance to backup.</param>
<param name="destination">
The directory where the backup is to be stored. If the backup path is
null to use the function will truncate the logs, if possible.
</param>
<param name="grbit">Backup options.</param>
<param name="statusCallback">
Optional status notification callback.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRestoreInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_PFNSTATUS)">
<summary>
Restores and recovers a streaming backup of an instance including all
the attached databases. It is designed to work with a backup created
with the <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetBackupInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,System.String,Microsoft.Isam.Esent.Interop.BackupGrbit,Microsoft.Isam.Esent.Interop.JET_PFNSTATUS)"/> function. This is the
simplest and most encapsulated restore function.
</summary>
<param name="instance">
The instance to use. The instance should not be initialized.
Restoring the files will initialize the instance.
</param>
<param name="source">
Location of the backup. The backup should have been created with
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetBackupInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,System.String,Microsoft.Isam.Esent.Interop.BackupGrbit,Microsoft.Isam.Esent.Interop.JET_PFNSTATUS)"/>.
</param>
<param name="destination">
Name of the folder where the database files from the backup set will
be copied and recovered. If this is set to null, the database files
will be copied and recovered to their original location.
</param>
<param name="statusCallback">
Optional status notification callback.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOSSnapshotFreeze(Microsoft.Isam.Esent.Interop.JET_OSSNAPID,System.Int32@,Microsoft.Isam.Esent.Interop.JET_INSTANCE_INFO[]@,Microsoft.Isam.Esent.Interop.SnapshotFreezeGrbit)">
<summary>
Starts a snapshot. While the snapshot is in progress, no
write-to-disk activity by the engine can take place.
</summary>
<param name="snapshot">The snapshot session.</param>
<param name="numInstances">
Returns the number of instances that are part of the snapshot session.
</param>
<param name="instances">
Returns information about the instances that are part of the snapshot session.
</param>
<param name="grbit">
Snapshot freeze options.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOSSnapshotPrepare(Microsoft.Isam.Esent.Interop.JET_OSSNAPID@,Microsoft.Isam.Esent.Interop.SnapshotPrepareGrbit)">
<summary>
Begins the preparations for a snapshot session. A snapshot session
is a short time interval in which the engine does not issue any
write IOs to disk, so that the engine can participate in a volume
snapshot session (when driven by a snapshot writer).
</summary>
<param name="snapshot">Returns the ID of the snapshot session.</param>
<param name="grbit">Snapshot options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOSSnapshotThaw(Microsoft.Isam.Esent.Interop.JET_OSSNAPID,Microsoft.Isam.Esent.Interop.SnapshotThawGrbit)">
<summary>
Notifies the engine that it can resume normal IO operations after a
freeze period and a successful snapshot.
</summary>
<param name="snapshot">The ID of the snapshot.</param>
<param name="grbit">Thaw options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetBeginExternalBackupInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.BeginExternalBackupGrbit)">
<summary>
Initiates an external backup while the engine and database are online and active.
</summary>
<param name="instance">The instance prepare for backup.</param>
<param name="grbit">Backup options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCloseFileInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_HANDLE)">
<summary>
Closes a file that was opened with JetOpenFileInstance after the
data from that file has been extracted using JetReadFileInstance.
</summary>
<param name="instance">The instance to use.</param>
<param name="handle">The handle to close.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetEndExternalBackupInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
<summary>
Ends an external backup session. This API is the last API in a series
of APIs that must be called to execute a successful online
(non-VSS based) backup.
</summary>
<param name="instance">The instance to end the backup for.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetEndExternalBackupInstance2(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.EndExternalBackupGrbit)">
<summary>
Ends an external backup session. This API is the last API in a series
of APIs that must be called to execute a successful online
(non-VSS based) backup.
</summary>
<param name="instance">The instance to end the backup for.</param>
<param name="grbit">Options that specify how the backup ended.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenFileInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,System.String,Microsoft.Isam.Esent.Interop.JET_HANDLE@,System.Int64@,System.Int64@)">
<summary>
Opens an attached database, database patch file, or transaction log
file of an active instance for the purpose of performing a streaming
fuzzy backup. The data from these files can subsequently be read
through the returned handle using JetReadFileInstance. The returned
handle must be closed using JetCloseFileInstance. An external backup
of the instance must have been previously initiated using
JetBeginExternalBackupInstance.
</summary>
<param name="instance">The instance to use.</param>
<param name="file">The file to open.</param>
<param name="handle">Returns a handle to the file.</param>
<param name="fileSizeLow">Returns the least significant 32 bits of the file size.</param>
<param name="fileSizeHigh">Returns the most significant 32 bits of the file size.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetReadFileInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_HANDLE,System.Byte[],System.Int32,System.Int32@)">
<summary>
Retrieves the contents of a file opened with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenFileInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE,System.String,Microsoft.Isam.Esent.Interop.JET_HANDLE@,System.Int64@,System.Int64@)"/>.
</summary>
<param name="instance">The instance to use.</param>
<param name="file">The file to read from.</param>
<param name="buffer">The buffer to read into.</param>
<param name="bufferSize">The size of the buffer.</param>
<param name="bytesRead">Returns the amount of data read into the buffer.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetTruncateLogInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
<summary>
Used during a backup initiated by JetBeginExternalBackup to delete
any transaction log files that will no longer be needed once the
current backup completes successfully.
</summary>
<param name="instance">The instance to truncate.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetBeginSession(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_SESID@,System.String,System.String)">
<summary>
Initialize a new ESENT session.
</summary>
<param name="instance">The initialized instance to create the session in.</param>
<param name="sesid">Returns the created session.</param>
<param name="username">The parameter is not used.</param>
<param name="password">The parameter is not used.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID,System.IntPtr)">
<summary>
Associates a session with the current thread using the given context
handle. This association overrides the default engine requirement
that a transaction for a given session must occur entirely on the
same thread. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetResetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID)"/> to remove the
association.
</summary>
<param name="sesid">The session to set the context on.</param>
<param name="context">The context to set.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetResetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID)">
<summary>
Disassociates a session from the current thread. This should be
used in conjunction with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID,System.IntPtr)"/>.
</summary>
<param name="sesid">The session to use.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetEndSession(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.EndSessionGrbit)">
<summary>
Ends a session.
</summary>
<param name="sesid">The session to end.</param>
<param name="grbit">This parameter is not used.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDupSession(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_SESID@)">
<summary>
Initialize a new ESE session in the same instance as the given sesid.
</summary>
<param name="sesid">The session to duplicate.</param>
<param name="newSesid">Returns the new session.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.OpenTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@)">
<summary>
Opens a cursor on a previously created table.
</summary>
<param name="sesid">The database session to use.</param>
<param name="dbid">The database to open the table in.</param>
<param name="tablename">The name of the table to open.</param>
<param name="parameters">The parameter is not used.</param>
<param name="parametersSize">The parameter is not used.</param>
<param name="grbit">Table open options.</param>
<param name="tableid">Returns the opened table.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Close an open table.
</summary>
<param name="sesid">The session which opened the table.</param>
<param name="tableid">The table to close.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDupCursor(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.DupCursorGrbit)">
<summary>
Duplicates an open cursor and returns a handle to the duplicated cursor.
If the cursor that was duplicated was a read-only cursor then the
duplicated cursor is also a read-only cursor.
Any state related to constructing a search key or updating a record is
not copied into the duplicated cursor. In addition, the location of the
original cursor is not duplicated into the duplicated cursor. The
duplicated cursor is always opened on the clustered index and its
location is always on the first row of the table.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to duplicate.</param>
<param name="newTableid">The duplicated cursor.</param>
<param name="grbit">Reserved for future use.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetComputeStats(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Walks each index of a table to exactly compute the number of entries
in an index, and the number of distinct keys in an index. This
information, together with the number of database pages allocated
for an index and the current time of the computation is stored in
index metadata in the database. This data can be subsequently retrieved
with information operations.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table that the statistics will be computed on.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetLS(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_LS,Microsoft.Isam.Esent.Interop.LsGrbit)">
<summary>
Enables the application to associate a context handle known as
Local Storage with a cursor or the table associated with that
cursor. This context handle can be used by the application to
store auxiliary data that is associated with a cursor or table.
The application is later notified using a runtime callback when
the context handle must be released. This makes it possible to
associate dynamically allocated state with a cursor or table.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to use.</param>
<param name="ls">The context handle to be associated with the session or cursor.</param>
<param name="grbit">Set options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetLS(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_LS@,Microsoft.Isam.Esent.Interop.LsGrbit)">
<summary>
Enables the application to retrieve the context handle known
as Local Storage that is associated with a cursor or the table
associated with that cursor. This context handle must have been
previously set using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetLS(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_LS,Microsoft.Isam.Esent.Interop.LsGrbit)"/>. JetGetLS can also
be used to simultaneously fetch the current context handle for
a cursor or table and reset that context handle.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to use.</param>
<param name="ls">Returns the retrieved context handle.</param>
<param name="grbit">Retrieve options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetCursorInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Determine whether an update of the current record of a cursor
will result in a write conflict, based on the current update
status of the record. It is possible that a write conflict will
ultimately be returned even if JetGetCursorInfo returns successfully.
because another session may update the record before the current
session is able to update the same record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to check.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetBeginTransaction(Microsoft.Isam.Esent.Interop.JET_SESID)">
<summary>
Causes a session to enter a transaction or create a new save point in an existing
transaction.
</summary>
<param name="sesid">The session to begin the transaction for.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetBeginTransaction2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.BeginTransactionGrbit)">
<summary>
Causes a session to enter a transaction or create a new save point in an existing
transaction.
</summary>
<param name="sesid">The session to begin the transaction for.</param>
<param name="grbit">Transaction options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCommitTransaction(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.CommitTransactionGrbit)">
<summary>
Commits the changes made to the state of the database during the current save point
and migrates them to the previous save point. If the outermost save point is committed
then the changes made during that save point will be committed to the state of the
database and the session will exit the transaction.
</summary>
<param name="sesid">The session to commit the transaction for.</param>
<param name="grbit">Commit options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRollback(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.RollbackTransactionGrbit)">
<summary>
Undoes the changes made to the state of the database
and returns to the last save point. JetRollback will also close any cursors
opened during the save point. If the outermost save point is undone, the
session will exit the transaction.
</summary>
<param name="sesid">The session to rollback the transaction for.</param>
<param name="grbit">Rollback options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.JET_TABLEID@)">
<summary>
Create an empty table. The newly created table is opened exclusively.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database to create the table in.</param>
<param name="table">The name of the table to create.</param>
<param name="pages">Initial number of pages in the table.</param>
<param name="density">
The default density of the table. This is used when doing sequential inserts.
</param>
<param name="tableid">Returns the tableid of the new table.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetAddColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.JET_COLUMNID@)">
<summary>
Add a new column to an existing table.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to add the column to.</param>
<param name="column">The name of the column.</param>
<param name="columndef">The definition of the column.</param>
<param name="defaultValue">The default value of the column.</param>
<param name="defaultValueSize">The size of the default value.</param>
<param name="columnid">Returns the columnid of the new column.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDeleteColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)">
<summary>
Deletes a column from a database table.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">A cursor on the table to delete the column from.</param>
<param name="column">The name of the column to be deleted.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDeleteColumn2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.DeleteColumnGrbit)">
<summary>
Deletes a column from a database table.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">A cursor on the table to delete the column from.</param>
<param name="column">The name of the column to be deleted.</param>
<param name="grbit">Column deletion options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDeleteIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)">
<summary>
Deletes an index from a database table.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">A cursor on the table to delete the index from.</param>
<param name="index">The name of the index to be deleted.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDeleteTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String)">
<summary>
Deletes a table from a database.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database to delete the table from.</param>
<param name="table">The name of the table to delete.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.CreateIndexGrbit,System.String,System.Int32,System.Int32)">
<summary>
Creates an index over data in an ESE database. An index can be used to locate
specific data quickly.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to create the index on.</param>
<param name="indexName">
Pointer to a null-terminated string that specifies the name of the index to create.
</param>
<param name="grbit">Index creation options.</param>
<param name="keyDescription">
Pointer to a double null-terminated string of null-delimited tokens.
</param>
<param name="keyDescriptionLength">
The length, in characters, of szKey including the two terminating nulls.
</param>
<param name="density">Initial B+ tree density.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateIndex2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_INDEXCREATE[],System.Int32)">
<summary>
Creates indexes over data in an ESE database.
</summary>
<remarks>
When creating multiple indexes (i.e. with numIndexCreates
greater than 1) this method MUST be called
outside of any transactions and with exclusive access to the
table. The JET_TABLEID returned by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCreateTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.JET_TABLEID@)"/>
will have exlusive access or the table can be opened for
exclusive access by passing <see cref="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.DenyRead"/>
to <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.OpenTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@)"/>.
</remarks>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to create the index on.</param>
<param name="indexcreates">Array of objects describing the indexes to be created.</param>
<param name="numIndexCreates">Number of index description objects.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
<summary>
Creates a temporary table with a single index. A temporary table
stores and retrieves records just like an ordinary table created
using JetCreateTableColumnIndex. However, temporary tables are
much faster than ordinary tables due to their volatile nature.
They can also be used to very quickly sort and perform duplicate
removal on record sets when accessed in a purely sequential manner.
Also see
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>.
<seealso cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="columns">
Column definitions for the columns created in the temporary table.
</param>
<param name="numColumns">Number of column definitions.</param>
<param name="grbit">Table creation options.</param>
<param name="tableid">
Returns the tableid of the temporary table. Closing this tableid
with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/> frees the resources associated
with the temporary table.
</param>
<param name="columnids">
The output buffer that receives the array of column IDs generated
during the creation of the temporary table. The column IDs in this
array will exactly correspond to the input array of column definitions.
As a result, the size of this buffer must correspond to the size of
the input array.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
<summary>
Creates a temporary table with a single index. A temporary table
stores and retrieves records just like an ordinary table created
using JetCreateTableColumnIndex. However, temporary tables are
much faster than ordinary tables due to their volatile nature.
They can also be used to very quickly sort and perform duplicate
removal on record sets when accessed in a purely sequential manner.
Also see
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>.
<seealso cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="columns">
Column definitions for the columns created in the temporary table.
</param>
<param name="numColumns">Number of column definitions.</param>
<param name="lcid">
The locale ID to use to compare any Unicode key column data in the temporary table.
Any locale may be used as long as the appropriate language pack has been installed
on the machine.
</param>
<param name="grbit">Table creation options.</param>
<param name="tableid">
Returns the tableid of the temporary table. Closing this tableid
with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/> frees the resources associated
with the temporary table.
</param>
<param name="columnids">
The output buffer that receives the array of column IDs generated
during the creation of the temporary table. The column IDs in this
array will exactly correspond to the input array of column definitions.
As a result, the size of this buffer must correspond to the size of
the input array.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
<summary>
Creates a temporary table with a single index. A temporary table
stores and retrieves records just like an ordinary table created
using JetCreateTableColumnIndex. However, temporary tables are
much faster than ordinary tables due to their volatile nature.
They can also be used to very quickly sort and perform duplicate
removal on record sets when accessed in a purely sequential manner.
Also see
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
<seealso cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="columns">
Column definitions for the columns created in the temporary table.
</param>
<param name="numColumns">Number of column definitions.</param>
<param name="unicodeindex">
The Locale ID and normalization flags that will be used to compare
any Unicode key column data in the temporary table. When this
is not present then the default options are used.
</param>
<param name="grbit">Table creation options.</param>
<param name="tableid">
Returns the tableid of the temporary table. Closing this tableid
with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/> frees the resources associated
with the temporary table.
</param>
<param name="columnids">
The output buffer that receives the array of column IDs generated
during the creation of the temporary table. The column IDs in this
array will exactly correspond to the input array of column definitions.
As a result, the size of this buffer must correspond to the size of
the input array.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF@)">
<summary>
Retrieves information about a table column.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table containing the column.</param>
<param name="columnName">The name of the column.</param>
<param name="columndef">Filled in with information about the column.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF@)">
<summary>
Retrieves information about a table column.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table containing the column.</param>
<param name="columnid">The columnid of the column.</param>
<param name="columndef">Filled in with information about the column.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNLIST@)">
<summary>
Retrieves information about all columns in the table.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table containing the column.</param>
<param name="columnName">The parameter is ignored.</param>
<param name="columnlist">Filled in with information about the columns in the table.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF@)">
<summary>
Retrieves information about a table column.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database that contains the table.</param>
<param name="tablename">The name of the table containing the column.</param>
<param name="columnName">The name of the column.</param>
<param name="columndef">Filled in with information about the column.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNLIST@)">
<summary>
Retrieves information about all columns in a table.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database that contains the table.</param>
<param name="tablename">The name of the table containing the column.</param>
<param name="columnName">This parameter is ignored.</param>
<param name="columnlist">Filled in with information about the columns in the table.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetObjectInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,Microsoft.Isam.Esent.Interop.JET_OBJECTLIST@)">
<summary>
Retrieves information about database objects.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database to use.</param>
<param name="objectlist">Filled in with information about the objects in the database.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetCurrentIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String@,System.Int32)">
<summary>
Ddetermines the name of the current
index of a given cursor. This name is also used to later re-select
that index as the current index using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetCurrentIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)"/>.
It can also be used to discover the properties of that index using
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableIndexInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_INDEXLIST@)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to get the index name for.</param>
<param name="indexName">Returns the name of the index.</param>
<param name="maxNameLength">
The maximum length of the index name. Index names are no more than
<see cref="F:Microsoft.Isam.Esent.Interop.SystemParameters.NameMost"/> characters.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetIndexInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_INDEXLIST@)">
<summary>
Retrieves information about indexes on a table.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database to use.</param>
<param name="tablename">The name of the table to retrieve index information about.</param>
<param name="ignored">This parameter is ignored.</param>
<param name="indexlist">Filled in with information about indexes on the table.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableIndexInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_INDEXLIST@)">
<summary>
Retrieves information about indexes on a table.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to retrieve index information about.</param>
<param name="ignored">This parameter is ignored.</param>
<param name="indexlist">Filled in with information about indexes on the table.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRenameTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.String)">
<summary>
Changes the name of an existing table.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database containing the table.</param>
<param name="tableName">The name of the table.</param>
<param name="newTableName">The new name of the table.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRenameColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,System.String,Microsoft.Isam.Esent.Interop.RenameColumnGrbit)">
<summary>
Changes the name of an existing column.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table containing the column.</param>
<param name="name">The name of the column.</param>
<param name="newName">The new name of the column.</param>
<param name="grbit">Column rename options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumnDefaultValue(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.String,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.SetColumnDefaultValueGrbit)">
<summary>
Changes the default value of an existing column.
</summary>
<param name="sesid">The session to use.</param>
<param name="dbid">The database containing the column.</param>
<param name="tableName">The name of the table containing the column.</param>
<param name="columnName">The name of the column.</param>
<param name="data">The new default value.</param>
<param name="dataSize">Size of the new default value.</param>
<param name="grbit">Column default value options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGotoBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32)">
<summary>
Positions a cursor to an index entry for the record that is associated with
the specified bookmark. The bookmark can be used with any index defined over
a table. The bookmark for a record can be retrieved using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetGetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<param name="bookmark">The bookmark used to position the cursor.</param>
<param name="bookmarkSize">The size of the bookmark.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGotoSecondaryIndexBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.GotoSecondaryIndexBookmarkGrbit)">
<summary>
Positions a cursor to an index entry that is associated with the
specified secondary index bookmark. The secondary index bookmark
must be used with the same index over the same table from which it
was originally retrieved. The secondary index bookmark for an index
entry can be retrieved using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetGotoSecondaryIndexBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.GotoSecondaryIndexBookmarkGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table cursor to position.</param>
<param name="secondaryKey">The buffer that contains the secondary key.</param>
<param name="secondaryKeySize">The size of the secondary key.</param>
<param name="primaryKey">The buffer that contains the primary key.</param>
<param name="primaryKeySize">The size of the primary key.</param>
<param name="grbit">Options for positioning the bookmark.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetMove(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.MoveGrbit)">
<summary>
Navigate through an index. The cursor can be positioned at the start or
end of the index and moved backwards and forwards by a specified number
of index entries. Also see
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveFirst(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>, <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveLast(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>,
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveNext(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>, <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMovePrevious(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
</summary>
<param name="sesid">The session to use for the call.</param>
<param name="tableid">The cursor to position.</param>
<param name="numRows">An offset which indicates how far to move the cursor.</param>
<param name="grbit">Move options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetMove(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_Move,Microsoft.Isam.Esent.Interop.MoveGrbit)">
<summary>
Navigate through an index. The cursor can be positioned at the start or
end of the index and moved backwards and forwards by a specified number
of index entries. Also see
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveFirst(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>, <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveLast(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>,
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveNext(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>, <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMovePrevious(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
</summary>
<param name="sesid">The session to use for the call.</param>
<param name="tableid">The cursor to position.</param>
<param name="numRows">An offset which indicates how far to move the cursor.</param>
<param name="grbit">Move options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetMakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs search keys that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/> and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<remarks>
The MakeKey functions provide datatype-specific make key functionality.
</remarks>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="dataSize">Size of the data.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)">
<summary>
Efficiently positions a cursor to an index entry that matches the search
criteria specified by the search key in that cursor and the specified
inequality. A search key must have been previously constructed using
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetMakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)"/>.
Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TrySeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<param name="grbit">Seek options.</param>
<returns>An ESENT warning.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)">
<summary>
Temporarily limits the set of index entries that the cursor can walk using
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetMove(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.MoveGrbit)"/> to those starting
from the current index entry and ending at the index entry that matches the
search criteria specified by the search key in that cursor and the specified
bound criteria. A search key must have been previously constructed using
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetMakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)"/>.
Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TrySetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to set the index range on.</param>
<param name="grbit">Index range options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetIntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXRANGE[],System.Int32,Microsoft.Isam.Esent.Interop.JET_RECORDLIST@,Microsoft.Isam.Esent.Interop.IntersectIndexesGrbit)">
<summary>
Computes the intersection between multiple sets of index entries from different secondary
indices over the same table. This operation is useful for finding the set of records in a
table that match two or more criteria that can be expressed using index ranges. Also see
<seealso cref="M:Microsoft.Isam.Esent.Interop.Api.IntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID[])"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="ranges">
An the index ranges to intersect. The tableids in the ranges
must have index ranges set on them. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>
to create an index range.
</param>
<param name="numRanges">
The number of index ranges.
</param>
<param name="recordlist">
Returns information about the temporary table containing the intersection results.
</param>
<param name="grbit">Intersection options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetCurrentIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)">
<summary>
Set the current index of a cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to set the index on.</param>
<param name="index">
The name of the index to be selected. If this is null or empty the primary
index will be selected.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetCurrentIndex2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.SetCurrentIndexGrbit)">
<summary>
Set the current index of a cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to set the index on.</param>
<param name="index">
The name of the index to be selected. If this is null or empty the primary
index will be selected.
</param>
<param name="grbit">
Set index options.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetCurrentIndex3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.SetCurrentIndexGrbit,System.Int32)">
<summary>
Set the current index of a cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to set the index on.</param>
<param name="index">
The name of the index to be selected. If this is null or empty the primary
index will be selected.
</param>
<param name="grbit">
Set index options.
</param>
<param name="itagSequence">
Sequence number of the multi-valued column value which will be used
to position the cursor on the new index. This parameter is only used
in conjunction with <see cref="F:Microsoft.Isam.Esent.Interop.SetCurrentIndexGrbit.NoMove"/>. When
this parameter is not present or is set to zero, its value is presumed
to be 1.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetIndexRecordCount(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32@,System.Int32)">
<summary>
Counts the number of entries in the current index from the current position forward.
The current position is included in the count. The count can be greater than the
total number of records in the table if the current index is over a multi-valued
column and instances of the column have multiple-values. If the table is empty,
then 0 will be returned for the count.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to count the records in.</param>
<param name="numRecords">Returns the number of records.</param>
<param name="maxRecordsToCount">
The maximum number of records to count. A value of 0 indicates that the count
is unlimited.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetTableSequential(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetTableSequentialGrbit)">
<summary>
Notifies the database engine that the application is scanning the entire
index that the cursor is positioned on. Consequently, the methods that
are used to access the index data will be tuned to make this scenario as
fast as possible.
Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetResetTableSequential(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ResetTableSequentialGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor that will be accessing the data.</param>
<param name="grbit">Reserved for future use.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetResetTableSequential(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ResetTableSequentialGrbit)">
<summary>
Notifies the database engine that the application is no longer scanning the
entire index the cursor is positioned on. This call reverses a notification
sent by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetTableSequential(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetTableSequentialGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor that was accessing the data.</param>
<param name="grbit">Reserved for future use.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetRecordPosition(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECPOS@)">
<summary>
Returns the fractional position of the current record in the current index
in the form of a <see cref="T:Microsoft.Isam.Esent.Interop.JET_RECPOS"/> structure.
Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetGotoPosition(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECPOS)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor positioned on the record.</param>
<param name="recpos">Returns the approximate fractional position of the record.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGotoPosition(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECPOS)">
<summary>
Moves a cursor to a new location that is a fraction of the way through
the current index.
Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetGetRecordPosition(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECPOS@)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<param name="recpos">The approximate position to move to.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)">
<summary>
Retrieves the bookmark for the record that is associated with the index entry
at the current position of a cursor. This bookmark can then be used to
reposition that cursor back to the same record using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetGotoBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32)"/>.
The bookmark will be no longer than <see cref="P:Microsoft.Isam.Esent.Interop.SystemParameters.BookmarkMost"/>
bytes.
Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.GetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the bookmark from.</param>
<param name="bookmark">Buffer to contain the bookmark.</param>
<param name="bookmarkSize">Size of the bookmark buffer.</param>
<param name="actualBookmarkSize">Returns the actual size of the bookmark.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetSecondaryIndexBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.GetSecondaryIndexBookmarkGrbit)">
<summary>
Retrieves a special bookmark for the secondary index entry at the
current position of a cursor. This bookmark can then be used to
efficiently reposition that cursor back to the same index entry
using JetGotoSecondaryIndexBookmark. This is most useful when
repositioning on a secondary index that contains duplicate keys or
that contains multiple index entries for the same record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the bookmark from.</param>
<param name="secondaryKey">Output buffer for the secondary key.</param>
<param name="secondaryKeySize">Size of the secondary key buffer.</param>
<param name="actualSecondaryKeySize">Returns the size of the secondary key.</param>
<param name="primaryKey">Output buffer for the primary key.</param>
<param name="primaryKeySize">Size of the primary key buffer.</param>
<param name="actualPrimaryKeySize">Returns the size of the primary key.</param>
<param name="grbit">Options for the call.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit)">
<summary>
Retrieves the key for the index entry at the current position of a cursor.
Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.RetrieveKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the key from.</param>
<param name="data">The buffer to retrieve the key into.</param>
<param name="dataSize">The size of the buffer.</param>
<param name="actualDataSize">Returns the actual size of the data.</param>
<param name="grbit">Retrieve key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit,Microsoft.Isam.Esent.Interop.JET_RETINFO)">
<summary>
Retrieves a single column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
Alternatively, this function can retrieve a column from a record being created
in the cursor copy buffer. This function can also retrieve column data from an
index entry that references the current record. In addition to retrieving the
actual column value, JetRetrieveColumn can also be used to retrieve the size
of a column, before retrieving the column data itself so that application
buffers can be sized appropriately.
</summary>
<remarks>
The RetrieveColumnAs functions provide datatype-specific retrieval functions.
</remarks>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<param name="data">The data buffer to be retrieved into.</param>
<param name="dataSize">The size of the data buffer.</param>
<param name="actualDataSize">Returns the actual size of the data buffer.</param>
<param name="grbit">Retrieve column options.</param>
<param name="retinfo">
If pretinfo is give as NULL then the function behaves as though an itagSequence
of 1 and an ibLongValue of 0 (zero) were given. This causes column retrieval to
retrieve the first value of a multi-valued column, and to retrieve long data at
offset 0 (zero).
</param>
<returns>An ESENT warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN[],System.Int32)">
<summary>
Retrieves multiple column values from the current record in a
single operation. An array of JET_RETRIEVECOLUMN structures is
used to describe the set of column values to be retrieved, and
to describe output buffers for each column value to be retrieved.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the data from.</param>
<param name="retrievecolumns">
An array of one or more <see cref="T:Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN"/> objects
describing the data to be retrieved.
</param>
<param name="numColumns">
The number of entries in the columns array.
</param>
<returns>
If any column retrieved is truncated due to an insufficient
length buffer, then the API will return
<see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.BufferTruncated"/>. However other errors
JET_wrnColumnNull are returned only in the error field of
the <see cref="T:Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN"/> object.
</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetEnumerateColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32@,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN[]@,Microsoft.Isam.Esent.Interop.JET_PFNREALLOC,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit)">
<summary>
Efficiently retrieves a set of columns and their values from the
current record of a cursor or the copy buffer of that cursor. The
columns and values retrieved can be restricted by a list of
column IDs, itagSequence numbers, and other characteristics. This
column retrieval API is unique in that it returns information in
dynamically allocated memory that is obtained using a
user-provided realloc compatible callback. This new flexibility
permits the efficient retrieval of column data with specific
characteristics (such as size and multiplicity) that are unknown
to the caller. This eliminates the need for the use of the discovery
modes of JetRetrieveColumn to determine those
characteristics in order to setup a final call to
JetRetrieveColumn that will successfully retrieve
the desired data.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve data from.</param>
<param name="numColumnids">The numbers of JET_ENUMCOLUMNIDS.</param>
<param name="columnids">
An optional array of column IDs, each with an optional array of itagSequence
numbers to enumerate.
</param>
<param name="numColumnValues">
Returns the number of column values retrieved.
</param>
<param name="columnValues">
Returns the enumerated column values.
</param>
<param name="allocator">
Callback used to allocate memory.
</param>
<param name="allocatorContext">
Context for the allocation callback.
</param>
<param name="maxDataSize">
Sets a cap on the amount of data to return from a long text or long
binary column. This parameter can be used to prevent the enumeration
of an extremely large column value.
</param>
<param name="grbit">Retrieve options.</param>
<returns>A warning or success.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetRecordSize(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECSIZE@,Microsoft.Isam.Esent.Interop.GetRecordSizeGrbit)">
<summary>
Retrieves record size information from the desired location.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">
The cursor that will be used for the API call. The cursor must be
positioned on a record, or have an update prepared.
</param>
<param name="recsize">Returns the size of the record.</param>
<param name="grbit">Call options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDelete(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Deletes the current record in a database table.
</summary>
<param name="sesid">The session that opened the cursor.</param>
<param name="tableid">The cursor on a database table. The current row will be deleted.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetPrepareUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_prep)">
<summary>
Prepare a cursor for update.
</summary>
<param name="sesid">The session which is starting the update.</param>
<param name="tableid">The cursor to start the update for.</param>
<param name="prep">The type of update to prepare.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)">
<summary>
The JetUpdate function performs an update operation including inserting a new row into
a table or updating an existing row. Deleting a table row is performed by calling
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetDelete(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
</summary>
<param name="sesid">The session which started the update.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="bookmark">Returns the bookmark of the updated record. This can be null.</param>
<param name="bookmarkSize">The size of the bookmark buffer.</param>
<param name="actualBookmarkSize">Returns the actual size of the bookmark.</param>
<remarks>
JetUpdate is the final step in performing an insert or an update. The update is begun by
calling <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetPrepareUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_prep)"/> and then by calling
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)"/>
one or more times to set the record state. Finally, <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)"/>
is called to complete the update operation. Indexes are updated only by JetUpdate or and not during JetSetColumn.
</remarks>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
The JetUpdate function performs an update operation including inserting a new row into
a table or updating an existing row. Deleting a table row is performed by calling
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetDelete(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
</summary>
<param name="sesid">The session which started the update.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<remarks>
JetUpdate is the final step in performing an insert or an update. The update is begun by
calling <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetPrepareUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_prep)"/> and then by calling
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)"/>
one or more times to set the record state. Finally, <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)"/>
is called to complete the update operation. Indexes are updated only by JetUpdate or and not during JetSetColumn.
</remarks>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)">
<summary>
The JetSetColumn function modifies a single column value in a modified record to be inserted or to
update the current record. It can overwrite an existing value, add a new value to a sequence of
values in a multi-valued column, remove a value from a sequence of values in a multi-valued column,
or update all or part of a long value (a column of type <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongText"/>
or <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongBinary"/>).
</summary>
<remarks>
The SetColumn methods provide datatype-specific overrides which may be more efficient.
</remarks>
<param name="sesid">The session which is performing the update.</param>
<param name="tableid">The cursor to update. An update should be prepared.</param>
<param name="columnid">The columnid to set.</param>
<param name="data">The data to set.</param>
<param name="dataSize">The size of data to set.</param>
<param name="grbit">SetColumn options.</param>
<param name="setinfo">Used to specify itag or long-value offset.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_SETCOLUMN[],System.Int32)">
<summary>
Allows an application to set multiple column values in a single
operation. An array of <see cref="T:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN"/> structures is
used to describe the set of column values to be set, and to describe
input buffers for each column value to be set.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to set the columns on.</param>
<param name="setcolumns">
An array of <see cref="T:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN"/> structures describing the
data to set.
</param>
<param name="numColumns">
Number of entries in the setcolumns parameter.
</param>
<returns>
A warning. If the last column set has a warning, then
this warning will be returned from JetSetColumns itself.
</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetLock(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.GetLockGrbit)">
<summary>
Explicitly reserve the ability to update a row, write lock, or to explicitly prevent a row from
being updated by any other session, read lock. Normally, row write locks are acquired implicitly as a
result of updating rows. Read locks are usually not required because of record versioning. However,
in some cases a transaction may desire to explicitly lock a row to enforce serialization, or to ensure
that a subsequent operation will succeed.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to use. A lock will be acquired on the current record.</param>
<param name="grbit">Lock options, use this to specify which type of lock to obtain.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetEscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit)">
<summary>
Performs an atomic addition operation on one column. This function allows
multiple sessions to update the same record concurrently without conflicts.
Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.EscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int32)"/>.
</summary>
<param name="sesid">
The session to use. The session must be in a transaction.
</param>
<param name="tableid">The cursor to update.</param>
<param name="columnid">
The column to update. This must be an escrow updatable column.
</param>
<param name="delta">The buffer containing the addend.</param>
<param name="deltaSize">The size of the addend.</param>
<param name="previousValue">
An output buffer that will recieve the current value of the column. This buffer
can be null.
</param>
<param name="previousValueLength">The size of the previousValue buffer.</param>
<param name="actualPreviousValueLength">Returns the actual size of the previousValue.</param>
<param name="grbit">Escrow update options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetRegisterCallback(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_cbtyp,Microsoft.Isam.Esent.Interop.JET_CALLBACK,System.IntPtr,Microsoft.Isam.Esent.Interop.JET_HANDLE@)">
<summary>
Allows the application to configure the database engine to issue
notifications to the application for specific events. These
notifications are associated with a specific table and remain in
effect only until the instance containing the table is shut down
using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetTerm(Microsoft.Isam.Esent.Interop.JET_INSTANCE)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">
A cursor opened on the table that the callback should be
registered on.
</param>
<param name="cbtyp">
The callback reasons for which the application wishes to receive notifications.
</param>
<param name="callback">The callback function.</param>
<param name="context">A context that will be given to the callback.</param>
<param name="callbackId">
A handle that can later be used to cancel the registration of the given
callback function using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetUnregisterCallback(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_cbtyp,Microsoft.Isam.Esent.Interop.JET_HANDLE)"/>.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetUnregisterCallback(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_cbtyp,Microsoft.Isam.Esent.Interop.JET_HANDLE)">
<summary>
Configures the database engine to stop issuing notifications to the
application as previously requested through
<see cref="M:Microsoft.Isam.Esent.Interop.Api.JetRegisterCallback(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_cbtyp,Microsoft.Isam.Esent.Interop.JET_CALLBACK,System.IntPtr,Microsoft.Isam.Esent.Interop.JET_HANDLE@)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">
A cursor opened on the table that the callback should be
registered on.
</param>
<param name="cbtyp">
The callback reasons for which the application no longer wishes to receive notifications.
</param>
<param name="callbackId">
The handle of the registered callback that was returned by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetRegisterCallback(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_cbtyp,Microsoft.Isam.Esent.Interop.JET_CALLBACK,System.IntPtr,Microsoft.Isam.Esent.Interop.JET_HANDLE@)"/>.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDefragment(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.Int32@,System.Int32@,Microsoft.Isam.Esent.Interop.DefragGrbit)">
<summary>
Starts and stops database defragmentation tasks that improves data
organization within a database.
</summary>
<param name="sesid">The session to use for the call.</param>
<param name="dbid">The database to be defragmented.</param>
<param name="tableName">
Unused parameter. Defragmentation is performed for the entire database described by the given database ID.
</param>
<param name="passes">
When starting an online defragmentation task, this parameter sets the maximum number of defragmentation
passes. When stopping an online defragmentation task, this parameter is set to the number of passes
performed.
</param>
<param name="seconds">
When starting an online defragmentation task, this parameter sets
the maximum time for defragmentation. When stopping an online
defragmentation task, this output buffer is set to the length of
time used for defragmentation.
</param>
<param name="grbit">Defragmentation options.</param>
<returns>A warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetDefragment2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.Int32@,System.Int32@,Microsoft.Isam.Esent.Interop.JET_CALLBACK,Microsoft.Isam.Esent.Interop.DefragGrbit)">
<summary>
Starts and stops database defragmentation tasks that improves data
organization within a database.
</summary>
<remarks>
The callback passed to JetDefragment2 can be executed asynchronously.
The GC doesn't know that the unmanaged code has a reference to the callback
so it is important to make sure the callback isn't collected.
</remarks>
<param name="sesid">The session to use for the call.</param>
<param name="dbid">The database to be defragmented.</param>
<param name="tableName">
Unused parameter. Defragmentation is performed for the entire database described by the given database ID.
</param>
<param name="passes">
When starting an online defragmentation task, this parameter sets the maximum number of defragmentation
passes. When stopping an online defragmentation task, this parameter is set to the number of passes
performed.
</param>
<param name="seconds">
When starting an online defragmentation task, this parameter sets
the maximum time for defragmentation. When stopping an online
defragmentation task, this output buffer is set to the length of
time used for defragmentation.
</param>
<param name="callback">Callback function that defrag uses to report progress.</param>
<param name="grbit">Defragmentation options.</param>
<returns>A warning code.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetIdle(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.IdleGrbit)">
<summary>
Performs idle cleanup tasks or checks the version store status in ESE.
</summary>
<param name="sesid">The session to use.</param>
<param name="grbit">A combination of JetIdleGrbit flags.</param>
<returns>An error code if the operation fails.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.JetFreeBuffer(System.IntPtr)">
<summary>
Frees memory that was allocated by a database engine call.
</summary>
<remarks>
This method is internal because we never expose the memory
allocated by ESENT to our callers.
</remarks>
<param name="buffer">
The buffer allocated by a call to the database engine.
<see cref="F:System.IntPtr.Zero"/> is acceptable, and will be ignored.
</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.Check(System.Int32)">
<summary>
Throw an exception if the parameter is an ESE error,
returns a <see cref="T:Microsoft.Isam.Esent.Interop.JET_wrn"/> otherwise.
</summary>
<param name="err">The error code to check.</param>
<returns>An ESENT warning code (possibly success).</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.Fail(System.Int32)">
<summary>
Called to throw an exception with a failing error code.
</summary>
<param name="err">The error to throw.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,System.Text.Encoding,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="encoding">The encoding used to convert the string.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Boolean,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int16,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int64,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Guid,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.DateTime,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Single,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Double,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.UInt16,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.UInt32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.UInt64,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
<summary>
Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to create the key on.</param>
<param name="data">Column data for the current key column of the current index.</param>
<param name="grbit">Key options.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MoveBeforeFirst(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Position the cursor before the first record in the table. A
subsequent move next will position the cursor on the first
record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to position.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.MoveAfterLast(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Position the cursor after the last record in the table. A
subsequent move previous will position the cursor on the
last record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The table to position.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.TryMoveFirst(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Try to move to the first record in the table. If the table is empty this
returns false, if a different error is encountered an exception is thrown.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<returns>True if the move was successful.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.TryMoveLast(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Try to move to the last record in the table. If the table is empty this
returns false, if a different error is encountered an exception is thrown.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<returns>True if the move was successful.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.TryMoveNext(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Try to move to the next record in the table. If there is not a next record
this returns false, if a different error is encountered an exception is thrown.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<returns>True if the move was successful.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.TryMovePrevious(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Try to move to the previous record in the table. If there is not a previous record
this returns false, if a different error is encountered an exception is thrown.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<returns>True if the move was successful.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.TrySeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)">
<summary>
Efficiently positions a cursor to an index entry that matches the search
criteria specified by the search key in that cursor and the specified
inequality. A search key must have been previously constructed using JetMakeKey.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<param name="grbit">Seek option.</param>
<returns>True if a record matching the criteria was found.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.TrySetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)">
<summary>
Temporarily limits the set of index entries that the cursor can walk using
JetMove to those starting from the current index entry and ending at the index
entry that matches the search criteria specified by the search key in that cursor
and the specified bound criteria. A search key must have been previously constructed
using JetMakeKey. Returns true if the index range is non-empty, false otherwise.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to position.</param>
<param name="grbit">Seek option.</param>
<returns>True if the seek was successful.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.ResetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Removes an index range created with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/> or
<see cref="M:Microsoft.Isam.Esent.Interop.Api.TrySetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>. If no index range is present this
method does nothing.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to remove the index range on.</param>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.IntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID[])">
<summary>
Intersect a group of index ranges and return the bookmarks of the records which are found
in all the index ranges.
Also see <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetIntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXRANGE[],System.Int32,Microsoft.Isam.Esent.Interop.JET_RECORDLIST@,Microsoft.Isam.Esent.Interop.IntersectIndexesGrbit)"/>.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableids">
The tableids to use. Each tableid must be from a different index on the same table and
have an active index range. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>
to create an index range.
</param>
<returns>
The bookmarks of the records which are found in all the index ranges. The bookmarks
are returned in primary key order.
</returns>
</member>
<member name="F:Microsoft.Isam.Esent.Interop.Api.memoryCache">
<summary>
Cached retrieve buffers.
</summary>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.GetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
<summary>
Retrieves the bookmark for the record that is associated with the index entry
at the current position of a cursor. This bookmark can then be used to
reposition that cursor back to the same record using JetGotoBookmark.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the bookmark from.</param>
<returns>The bookmark of the record.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit)">
<summary>
Retrieves the key for the index entry at the current position of a cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the key from.</param>
<param name="grbit">Retrieve key options.</param>
<returns>The retrieved key.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnSize(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
<summary>
Retrieves the size of a single column value from the current record.
The record is that record associated with the index entry at the
current position of the cursor. Alternatively, this function can
retrieve a column from a record being created in the cursor copy
buffer. This function can also retrieve column data from an index
entry that references the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<returns>The size of the column. 0 if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnSize(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int32,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
<summary>
Retrieves the size of a single column value from the current record.
The record is that record associated with the index entry at the
current position of the cursor. Alternatively, this function can
retrieve a column from a record being created in the cursor copy
buffer. This function can also retrieve column data from an index
entry that references the current record.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<param name="itagSequence">
The sequence number of value in a multi-valued column.
The array of values is one-based. The first value is
sequence 1, not 0. If the record column has only one value then
1 should be passed as the itagSequence.
</param>
<param name="grbit">Retrieve column options.</param>
<returns>The size of the column. 0 if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit,Microsoft.Isam.Esent.Interop.JET_RETINFO)">
<summary>
Retrieves a single column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
Alternatively, this function can retrieve a column from a record being created
in the cursor copy buffer. This function can also retrieve column data from an
index entry that references the current record. In addition to retrieving the
actual column value, JetRetrieveColumn can also be used to retrieve the size
of a column, before retrieving the column data itself so that application
buffers can be sized appropriately.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<param name="grbit">Retrieve column options.</param>
<param name="retinfo">
If pretinfo is give as NULL then the function behaves as though an itagSequence
of 1 and an ibLongValue of 0 (zero) were given. This causes column retrieval to
retrieve the first value of a multi-valued column, and to retrieve long data at
offset 0 (zero).
</param>
<returns>The data retrieved from the column. Null if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
<summary>
Retrieves a single column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<returns>The data retrieved from the column. Null if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsString(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
<summary>
Retrieves a single column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
The Unicode encoding is used.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<returns>The data retrieved from the column as a string. Null if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsString(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Text.Encoding)">
<summary>
Retrieves a string column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<param name="encoding">The string encoding to use when converting data.</param>
<returns>The data retrieved from the column as a string. Null if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsString(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Text.Encoding,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
<summary>
Retrieves a string column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<param name="encoding">The string encoding to use when converting data.</param>
<param name="grbit">Retrieval options.</param>
<returns>The data retrieved from the column as a string. Null if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt16(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
<summary>
Retrieves a single column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<returns>The data retrieved from the column as a short. Null if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt16(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
<summary>
Retrieves an int16 column value from the current record. The record is that
record associated with the index entry at the current position of the cursor.
</summary>
<param name="sesid">The session to use.</param>
<param name="tableid">The cursor to retrieve the column from.</param>
<param name="columnid">The columnid to retrieve.</param>
<param name="grbit">Retrieval options.</param>
<returns>The data retrieved from the column as a short. Null if the column is null.</returns>
</member>
<member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt32(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)