Skip to content

Schema functions in the ADBC Scanner DuckDB extension

Function category

Schema

4 functions

Inspect the remote catalog — tables, columns, table types, full Arrow schemas — through the driver's metadata API.

adbc_columns

Table function Schema
Signature
adbc_columns( catalog := VARCHAR, column_name := VARCHAR, connection_handle := BIGINT, schema := VARCHAR, table_name := VARCHAR ) None
Arguments (Named)
Argument connection_handle Type BIGINT Mode Named Description
Argument catalog Type VARCHAR Mode Named Description
Argument schema Type VARCHAR Mode Named Description
Argument table_name Type VARCHAR Mode Named Description
Argument column_name Type VARCHAR Mode Named Description
Description
1 Describe a remote table
SET VARIABLE conn = (SELECT adbc_connect({'driver': 'sqlite', 'uri': ':memory:'}));
SELECT adbc_execute(getvariable('conn')::BIGINT, 'CREATE TABLE users(id INTEGER)');
SELECT * FROM adbc_columns(getvariable('conn')::BIGINT, table_name := 'users');

adbc_schema

Table function Schema
Signature
adbc_schema( catalog := VARCHAR, connection_handle := BIGINT, schema := VARCHAR, table_name := VARCHAR ) None
Arguments (Named)
Argument connection_handle Type BIGINT Mode Named Description
Argument table_name Type VARCHAR Mode Named Description
Argument catalog Type VARCHAR Mode Named Description
Argument schema Type VARCHAR Mode Named Description
Description
1 Inspect a query result schema
SET VARIABLE conn = (SELECT adbc_connect({'driver': 'sqlite', 'uri': ':memory:'}));
SELECT * FROM adbc_schema(getvariable('conn')::BIGINT, 'SELECT 1 AS id');

adbc_table_types

Table function Schema
Signature
adbc_table_types(connection_handle := BIGINT) None
Arguments (Named)
Argument connection_handle Type BIGINT Mode Named Description
Description
1 List the driver's table types
SET VARIABLE conn = (SELECT adbc_connect({'driver': 'sqlite', 'uri': ':memory:'}));
SELECT * FROM adbc_table_types(getvariable('conn')::BIGINT);

adbc_tables

Table function Schema
Signature
adbc_tables( catalog := VARCHAR, connection_handle := BIGINT, schema := VARCHAR, table_name := VARCHAR ) None
Arguments (Named)
Argument connection_handle Type BIGINT Mode Named Description
Argument catalog Type VARCHAR Mode Named Description
Argument schema Type VARCHAR Mode Named Description
Argument table_name Type VARCHAR Mode Named Description
Description
1 List tables for an active connection
SET VARIABLE conn = (SELECT adbc_connect({'driver': 'sqlite', 'uri': ':memory:'}));
SELECT * FROM adbc_tables(getvariable('conn')::BIGINT);