Home > Mobile >  Not able connect database using JDBC
Not able connect database using JDBC

Time:05-18

I am trying to connect with my SQL server in databricks notebook with JDBC using spark sql.

val jdbcHostname = "database.windows.net"
val jdbcPort = 1433
val jdbcDatabase = "Database1"

// Create the JDBC URL without passing in the user and password parameters.
val jdbcUrl = s"jdbc:sqlserver://${jdbcHostname}:${jdbcPort};database=${jdbcDatabase}"

// Create a Properties() object to hold the parameters.
import java.util.Properties
val connectionProperties = new Properties()

connectionProperties.put("user", s"${User1}");
connectionProperties.put("password", s"${abc$@123}");

But error showing up in properties,

error: ';' expected but '@' found. connectionProperties.put("password", s"${dcu$@123}");

I am not able to find what the issue is, can someone help if you know.

CodePudding user response:

The s"${xxx}" syntax is used to refer to a value in variable or an expression, but it your case it looks like a raw password, and in Scala variable names may not contain special characters, like in your expression: abc$@123. The solution would be to remove s from the beginning of the string...

P.S. Better & more secure solution would be to put password into the Databricks secret scope and obtain it with dbutils.secrets.get.

  • Related