Я также столкнулся с той же проблемой, когда попытался вместо непосредственного использования spark.read/write с jdbc установить соединение с помощью пакета mysql.connection.Вот взгляд:
!pip install mysql.connector
import mysql.connector
conn = mysql.connector.connect(host="localhost",port=3306, user="root", password="yourpassword", database="xyz")
cursor = conn.cursor()
Qry = "create table TempTableMaria (colA VARCHAR(50), startdate datetime(6), enddate datetime(6), colB VARCHAR(50));"
cursor.execute(Qry)
conn.commit()
conn.close()
Вы можете передать запрос на создание таблицы cutomized, где вы можете указать столбцы и их тип данных в соответствии с требованиями и создать пустую таблицу с требуемой схемой.
Один развы сделали свою работу, вы всегда можете удалить таблицу, если вам это нужно.
Для остальных операций, таких как добавление / перезапись этой таблицы, вы всегда можете вернуться к df.write.format ("jdbc ") .... Когда вы пишете в эту таблицу сейчас, ваш тип данных метки времени будет храниться как datetime, и никаких проблем не возникнет, если ваш столбец содержит дату 9999-12-31 00: 00: 00.000000
Надеюсь, это поможет!