Expand description
Re-exports
pub use self::handles::ColumnDescription;
pub use self::handles::DataType;
pub use self::handles::Nullability;
pub use self::parameter::InOut;
pub use self::parameter::Out;
pub use self::parameter::OutputParameter;
pub use force_send_sync;
pub use odbc_sys as sys;
Modules
- This module contains buffers intended to be bound to ODBC statement handles.
- Introduction to
odbc-api
(documentation only) - Provides basic abstraction over valid (i.e. allocated ODBC handles).
- Passing parameters to statement
Structs
- New type wrapping u8 and binding as SQL_BIT.
- In order to safe on network overhead, it is recommended to use block cursors instead of fetching values individually. This can greatly reduce the time applications need to fetch data. You can create a block cursor by binding preallocated memory to a cursor using
Cursor::bind_buffer
. A block cursor safes on a lot of IO overhead by fetching an entire set of rows (called rowset) at once into the buffer bound to it. Reusing the same buffer for each rowset also safes on allocations. A challange with using block cursors might be database schemas with columns there individual fields can be very large. In these cases developers can choose to: - Asynchronously iterates in blocks (called row sets) over a result set, filling a buffers with a lot of rows at once, instead of iterating the result set row by row. This is usually much faster. Asynchronous sibiling of
self::BlockCursor
. - Can be used to execute a statement with bulk array paramters. Contrary to its name any statement with parameters can be executed, not only
INSERT
however inserting large amounts of data in batches is the primary intended usecase. - The connection handle references storage of all information about the connection to the data source, including status, transaction state, and error information.
- Options to be passed then opening a connection to a datasource.
- Cursors are used to process and iterate the result sets returned by executing queries. Created by either a prepared query or direct execution. Usually utilized through the
crate::Cursor
trait. - The asynchronous sibiling of
CursorImpl
. Use this to fetch results in asynchronous code. - An individual row of an result set. See
crate::Cursor::next_row
. - Holds name and description of a datasource
- Struct holding information available on a driver. Can be obtained via
Environment::drivers
. - An ODBC 3.8 environment.
- Wraps a type T together with an additional indicator. This way the type gains a Null representation, those memory layout is compatible with ODBC.
- A preallocated SQL statement handle intended for sequential execution of different queries. See
crate::Connection::preallocate
. - Asynchronous sibling of
Preallocated
using polling mode for execution. Can be obtained usingPreallocated::into_polling
. - A prepared query. Prepared queries are useful if the similar queries should executed more than once. See
crate::Connection::prepare
. - Statement handle which also takes ownership of Connection
- Error indicating a failed allocation for a column buffer
- 16-bit wide string slice with undefined encoding.
- An owned, mutable 16-bit wide string with undefined encoding.
Enums
- Specifies how the driver and driver manager complete the incoming connection string. See
crate::Environment::driver_connect
. - Error type used to indicate a low level ODBC call returned with SQL_ERROR.
Traits
- You can obtain a mutable slice of a column buffer which allows you to change its contents.
- Cursors are used to process and iterate the result sets returned by executing queries.
- An instance can be consumed and to create a parameter which can be bound to a statement during execution.
- Implementers of this trait can be bound to a statement through a
self::ParameterCollectionRef
. - SQL Parameters used to execute a query.
- Implementers of this trait can be used as individual parameters of in a tuple of parameter references. This includes input parameters, output or in/out parameters.
- Provides Metadata of the resulting the result set. Implemented by
Cursor
types and prepared queries. Fetching metadata from a prepared query might be expensive (driver dependent), so your application should fetch the Metadata it requires from theCursor
if possible. - A Row set buffer binds row, or column wise buffers to a cursor in order to fill them with row sets with each call to fetch.
- Governs the behaviour of of polling in async functions.
Functions
- You can use this method to escape a password so it is suitable to be appended to an ODBC connection string as the value for the
PWD
attribute. This method is only of interest for application in need to create their own connection strings.