---
name: "odbx_unbind"
section: "3"
platform: "linux"
package: "opendbx"
version: "1.4.6-13"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/odbx_unbind"
---

# odbx\_unbind(3)

Disconnects from the database

## NAME

odbx\_unbind - Disconnects from the database

## SYNOPSIS

```
FC#include <opendbx/api.h>F[0]
```

FCint **odbx\_unbind**F\[0\]  FC(odbx\_t\* *handle*);F\[0\]

## DESCRIPTION

Releases the binding of the connection to the database and user associated by FC**odbx\_bind**F\[0\]() to the supplied connection object. This is useful for switching to a different database or binding to the database with different credentials. It is also possible to set new connection related options before rebinding to the database server. If an open transaction exists while this function is executed in the firebird backend, it will be committed to the database and closed. The behavior of the other backends for open transactions may vary.

It's necessary to process all result sets returned by the database server before using this function. Otherwise, it might return an error depending on the native database client library and the backend module. This function must be invoked before calling FC**odbx\_finish**F\[0\]() to avoid memory leaks and connections left open which may block necessary resources later on.

The FChandleF\[0\] parameter has to be the connection object created and returned by FC**odbx\_init**F\[0\](). It becomes invalid after it was supplied to FC**odbx\_finish**F\[0\]() and FC**odbx\_unbind**F\[0\]() will return an error in this case.

## RETURN VALUE

FC**odbx\_unbind**F\[0\]() returns FCODBX\_ERR\_SUCCESSF\[0\], or an error code whose value is less than zero if one of the operations couldn't be completed successfully. Possible error codes are listed in the error section and they can be feed to FC**odbx\_error**F\[0\]() and FC**odbx\_error\_type**F\[0\]() to get further details.

## ERRORS

- \-FCODBX\_ERR\_PARAMF\[0\]

  FChandleF\[0\] is NULL or the supplied connection object is invalid

## SEE ALSO

FC**odbx\_bind**F\[0\](), FC**odbx\_error**F\[0\](), FC**odbx\_finish**F\[0\]()
