РЕДАКТИРОВАТЬ :
Проверьте эту ссылку: Символы, которые не допускаются в имени таблицы и имени столбца на сервере sql?
Theпервый символ должен быть одним из следующих:
Буква в соответствии со стандартом Unicode 3.2. Определение букв Unicode включает латинские символы от a до z, от A до Z, а также буквенные символы из других языков.
Подчеркивание (_), знак (@),или знак числа (#).
Последующие символы могут включать следующее:
Буквы, как определено в стандарте Unicode 3.2.
Десятичные числа из основного латинского алфавита или других национальных алфавитов.
Знак at, знак доллара ($), знак числа или подчеркивание.
Пожалуйста, попробуйте использовать эту функцию, которую я сделал для подключения к базам данных SQL ( он имеет драйвер как часть свойств подключения и загружает драйвер во время выполнения ):
def connect_to_sql(
spark, jdbc_hostname, jdbc_port, database, data_table, username, password
):
jdbc_url = "jdbc:sqlserver://{0}:{1}/{2}".format(jdbc_hostname, jdbc_port, database)
connection_details = {
"user": username,
"password": password,
"driver": "com.microsoft.sqlserver.jdbc.SQLServerDriver",
}
df = spark.read.jdbc(url=jdbc_url, table=data_table, properties=connection_details)
return df
Просто передайте необходимые аргументы, и все должно заработать. Дайте мне знать, если это не так, я внесу необходимые изменения.