[API reference](https://evolu.dev/docs/api-reference) › [@evolu/sqlite-wasm](https://evolu.dev/docs/api-reference/sqlite-wasm) › [c-api](https://evolu.dev/docs/api-reference/sqlite-wasm/c-api) › sqlite3\_bind\_pointer

```ts
function sqlite3_bind_pointer(
  deps: SqliteWasmDep,
): (
  pStmt: SqliteStmtPtr,
  index: number,
  pPtr: 0 | WasmPtr,
  zPType: CStringPtr,
  xDestructor: 0 | SqliteFunctionPtr,
) => SqliteResultCode;
```

Defined in: [packages/sqlite-wasm/src/CApi.ts:2156](https://github.com/evoluhq/evolu/blob/bc4578a260dd15d5bbf94b83765ca05984d194cb/packages/sqlite-wasm/src/CApi.ts#L2156)

Binds SQL NULL carrying pPtr tagged with the type string zPType, which only
[sqlite3\_value\_pointer](https://evolu.dev/docs/api-reference/sqlite-wasm/c-api/functions/sqlite3_value_pointer) with an equal type string returns. The type
string should be static because SQLite keeps its address, and SQLite calls
xDestructor, unless NULL, with pPtr when done, even when binding fails.

Wasm type `i(iiiii)`. Signature `["sqlite3_bind_pointer", "int",
"sqlite3_stmt*", "int", "*", "string:static", "*"]` from SQLite's table.

See https://sqlite.org/c3ref/bind_blob.html.