當我試圖將記錄插入到azure突觸下麵的表使用JDBC其拋出錯誤
com.microsoft.sqlserver.jdbc。SQLServerException:聲明失敗了。列& # 39;COMPANY_ADDRESS_STATE& # 39;有一個數據類型,不能參與columnstore索引。
數據庫表的列(COMPANY_ADDRESS_STATE)數據類型為Varchar (50)
df.write.format (jdbc) .mode(“追加”)\ .option (“url”, sqlURL) \ .option(“數據表”,表名)\ .option(“用戶”,synUser) \ .option(‘密碼’,jdbcPassword) .save ()
誰能指引我正確的方法嗎
你好休伯特,
有趣的部分是我的列沒有nvarchar (max), varchar (max), varbinary (max)作為數據類型
你能請讓我知道什麼我想表的方法是正確的嗎
還是我們有其他方法在寫數據到突觸數據庫使用數據磚
是的,事實上,它隻是馬克斯。varchar我記得有一些問題,但是現在我不能清楚地記得。然而,我解決它通過創建一個新表(如COMPANY_ADDRESS_STATE_2)在SQL Azure磚(省略append模式)和比較的數據類型。
但是有一件事是突觸,所以我認為你需要指定它通過添加.format (“com.databricks.spark.sqldw”)
https://docs.microsoft.com/en-us/azure/databricks/data/data-sources/azure/synapse-analytics