Ballerina:如何将 Oracle 数据库与 Ballerina 连接?

Ballerina: How to connect Oracle database with Ballerina?

我是芭蕾舞女演员的新手。如何创建与 Oracle 数据库的连接?

在 ballerina 中,要连接到数据库,我们必须创建类型为 jdbc 的客户端(或者更确切地说,端点)。例如,如果我们要连接到 mysql 数据库,您可以创建一个 jdbc 客户端,如下所示

endpoint jdbc:Client testDB {
   url: "jdbc:mysql://localhost:3306/testdb",
   username: "root",
   password: "root",
   poolOptions: { maximumPoolSize: 5 }
};

在上面的例子中,url字段指定了数据库连接url。因此,如果数据库是 oracle,那么我们可以使用基于 oracle 的 url 方案,如下所示。

endpoint jdbc:Client testDB {
   url: "jdbc:oracle:thin:@localhost:1521/testdb",
   username: "test",
   password: "test",
   poolOptions: { maximumPoolSize: 5 }
};

一旦你创建了一个客户端,你就可以使用它来根据需要进行操作。例如,下面的代码段将在从客户端连接的数据库中创建一个新的 table。

import ballerina/io;
import ballerina/jdbc;

endpoint jdbc:Client testDB {
    url: "jdbc:oracle:thin:@localhost:1521/testdb",
    username: "test",
    password: "test",
    poolOptions: { maximumPoolSize: 5 }
};

function main(string... args) {
    var result = testDB->update("CREATE TABLE customers (customer_id number(10) NOT NULL,
                                customer_name varchar2(50) NOT NULL, city varchar2(50))");

    match result {
        int retInt => io:println("status: " + retInt);
        error e => io:println("failed: " + e.message);
    }
}

您还必须将 Oracle JDBC 驱动程序 jar 放入 BALLERINA_HOME/bre/lib 才能使其正常工作。

一套完整的操作,可以参考这个指南 - https://ballerina.io/learn/by-example/jdbc-client.html