从数据库到Oracle的连接

2022-07-15 00:00:00 databricks oracle

我正在尝试从数据库连接到Oracle数据库。然而,我在任何文档中都找不到确切的语法。

有谁可以帮助了解准确的语法吗?还是逐步建立连接的过程?

这是我到目前为止的尝试:

dbutils.widgets.text("sql_instance_name", "serveraddress")
jdbcHostname = getArgument("sql_instance_name")
jdbcPort = 1521
jdbcDatabase = "secrete"
username = dbutils.secrets.get(scope = "masked", key = "username")
password = dbutils.secrets.get(scope = "masked", key = "password")
jdbcUrl = "jdbc:oracle:thin:username/password@jdbcHostname:1521:jdbcDatabase"
connectionProperties = {
  "user" : username,
  "password" : password,
  "driver" : "oracle.jdbc.driver.OracleDriver"
}

Oracle

下面的代码片段向您展示了如何从推荐答案数据库中读取数据。此方法要求您在群集上安装正确的驱动程序。

%sql

CREATE TABLE oracle_table
USING org.apache.spark.sql.jdbc
OPTIONS (
  dbtable 'table_name',
  driver 'oracle.jdbc.driver.OracleDriver',
  user 'username',
  password 'pasword',
  url 'jdbc:oracle:thin://@<hostname>:1521/<db>')

从数据库读取数据的Python代码。

empDF = spark.read 
    .format("jdbc") 
    .option("url", "jdbc:oracle:thin:username/password@//hostname:portnumber/SID") 
    .option("dbtable", "hr.emp") 
    .option("user", "db_user_name") 
    .option("password", "password") 
    .option("driver", "oracle.jdbc.driver.OracleDriver") 
    .load()

有关详细信息,请参阅"Azure Databricks- Data Sources"。

希望这能有所帮助。

相关文章