Spark SQL을 사용하여 JDBC가 있는 Databricks 노트북의 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}");
그러나 속성에 표시되는 오류,
error: ';' expected but '@' found. connectionProperties.put("password", s"${dcu$@123}");
뭐가 문제인지 못찾겠는데 아시는 분 계시면 도와주실 수 있나요?
구문은 변수 또는 표현식의 값을 참조 하는 s"${xxx}"
데 사용되지만 귀하의 경우에는 원시 암호처럼 보이고 스칼라에서는 표현식과 같이 변수 이름에 특수 문자가 포함될 수 없습니다 abc$@123
. 해결책은 s
문자열의 시작 부분에서 제거하는 것입니다 ...
PS 더 나은 보안 솔루션은 Databricks 비밀 범위 에 암호를 넣고 dbutils.secrets.get
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다