ODBC¶
Pony wrapper for unixODBC. Provides typed, safe access to ODBC data sources with runtime state checking, redacted error diagnostics, and immutable Row snapshots.
Usage¶
use "odbc"
actor Main
new create(env: Env) =>
match Odbc.connect(Dsn("DSN=mydb"))
| let conn: Connection =>
match conn.exec("CREATE TABLE t (id INTEGER)")
| let e: ExecError => env.err.print(e.string())
end
conn.close()
| let e: ConnectError =>
env.err.print(e.string())
end
Public Types¶
- primitive AlreadyInTransaction
- primitive BindConnectionClosed
- class BindError
- type BindErrorKind
- primitive BindStatementClosed
- primitive Bound
- class CancelToken
- class ColIndex
- class ColumnMeta
- primitive ColumnTooLarge
- primitive CommitAmbiguous
- primitive CommitFailed
- class ConnectError
- type ConnectErrorKind
- class Connection
- primitive ConnectionClosed
- primitive ConnectionLost
- primitive ConstraintViolation
- class Cursor
- primitive CursorAlreadyOpen
- primitive CursorClosed
- class CursorIterator
- primitive CursorNotOpen
- actor DbSession
- primitive DbcAllocFailed
- primitive DescribeParamErrorClassifier
- type DiagChain
- class DiagRecord
- primitive DriverConnectFailed
- primitive DriverDoesNotSupportDescribeParam
- primitive DriverFetchError
- primitive DriverMetadataError
- primitive DriverPrepareError
- primitive DriverRejected
- primitive DriverRollbackError
- primitive DriverTxError
- class Dsn
- primitive EndOfRows
- primitive EnvAllocFailed
- class ExecError
- primitive ExecErrorClassifier
- type ExecErrorKind
- primitive Executed
- primitive FetchConnectionClosed
- primitive FetchConnectionLost
- class FetchError
- type FetchErrorKind
- primitive InvalidUtf8
- class MaxColumnBytes
- primitive MetadataConnectionClosed
- class MetadataError
- type MetadataErrorKind
- primitive MetadataStatementClosed
- class MutableRow
- primitive NoNulls
- primitive NoRowCount
- primitive NotInTransaction
- type Nullability
- primitive Nullable
- primitive NullableUnknown
- primitive ODBCConstants
- primitive Odbc
- class OdbcOptions
- class ParamIndex
- primitive ParamIndexOutOfRange
- primitive ParamTooLarge
- primitive PrepareConnectionClosed
- class PrepareError
- type PrepareErrorKind
- primitive QueryError
- primitive RollbackNotInTransaction
- class Row
- type RowCount
- class SqlBigInt
- class SqlBool
- class SqlDate
- class SqlDecimal
- class SqlFloat
- class SqlInteger
- primitive SqlNull
- class SqlRaw
- class SqlSmallInt
- primitive SqlTagBigInt
- primitive SqlTagBool
- primitive SqlTagDate
- primitive SqlTagDecimal
- primitive SqlTagFloat
- primitive SqlTagInteger
- primitive SqlTagSmallInt
- primitive SqlTagText
- primitive SqlTagTime
- primitive SqlTagTimestamp
- primitive SqlTagTinyInt
- class SqlTagUnknown
- class SqlText
- class SqlTime
- class SqlTimestamp
- class SqlTinyInt
- type SqlTypeTag
- trait SqlValue
- class Statement
- primitive StatementClosed
- class StatementIterator
- primitive SyntaxError
- primitive TxBeginConnectionClosed
- class TxBeginError
- type TxBeginErrorKind
- primitive TxBegun
- class TxCommitError
- type TxCommitVerdict
- primitive TxCommitted
- class TxRollbackError
- type TxRollbackErrorKind
- primitive TxRolledBack
- primitive UnboundParams
- primitive UnsupportedColumnType
- class Warnings