快速入門¶
在這裡我們將簡要介紹 ADBC 的基本功能,並以 Java 的 PostgreSQL 驅動程式為例。
安裝¶
若要在您的 Maven 專案中包含 ADBC,請新增以下依賴項
<dependency>
<groupId>org.apache.arrow.adbc</groupId>
<artifactId>adbc-driver-jdbc</artifactId>
<version>${adbc.version}</version>
</dependency>
在本節的範例中,需要以下匯入
import org.apache.arrow.adbc.core.AdbcConnection;
import org.apache.arrow.adbc.core.AdbcDatabase;
import org.apache.arrow.adbc.core.AdbcDriver;
import org.apache.arrow.adbc.core.AdbcException;
import org.apache.arrow.adbc.core.AdbcStatement;
JDBC 風格 API¶
ADBC 提供了 JDBC 標準風格的高階 API。
用法¶
final Map<String, Object> parameters = new HashMap<>();
parameters.put(AdbcDriver.PARAM_URL, "jdbc:postgresql://127.0.0.1:5432/postgres");
try (
BufferAllocator allocator = new RootAllocator();
AdbcDatabase db = new JdbcDriver(allocator).open(parameters);
AdbcConnection adbcConnection = db.connect();
AdbcStatement stmt = adbcConnection.createStatement()
) {
stmt.setSqlQuery("select * from foo");
AdbcStatement.QueryResult queryResult = stmt.executeQuery();
while (queryResult.getReader().loadNextBatch()) {
// process batch
}
} catch (AdbcException e) {
// throw
}
在應用程式碼中,連線必須在使用後關閉,否則可能會發生記憶體洩漏。建議將連線包裝在 try-with-resources 區塊中,以進行自動資源管理。在本範例中,我們連線到 PostgreSQL 資料庫,特別是預設資料庫 “postgres”。
請注意,建立 statement 也包裝在 try-with-resources 區塊中。假設我們的資料庫中有名為 “foo” 的表,也提供了設定和執行查詢的範例。