microsoft / sql-spark-connector

Apache Spark Connector for SQL Server and Azure SQL
Apache License 2.0
273 stars 116 forks source link

Unable to delete rows #261

Open hangsunmsft opened 2 months ago

hangsunmsft commented 2 months ago

Hi team, could you please kindly elaborate if it is possible to delete rows by using sql-spark-connector.

I tried to run a delete query but got the below error: com.microsoft.sqlserver.jdbc.SQLServerException: A nested INSERT, UPDATE, DELETE, or MERGE statement must have an OUTPUT clause.

Then I added the OUTPUT clause, but got a different error: com.microsoft.sqlserver.jdbc.SQLServerException: A nested INSERT, UPDATE, DELETE, or MERGE statement is not allowed in a SELECT statement that is not the immediate source of rows for an INSERT statement.

It seems like there is a limitation when users trying to delete rows.

The overwrite mode seems to be a workaround, but actually not efficient, especially when interacting with large data size.

hangsunmsft commented 2 months ago

Screenshot 2024-06-25 153022 Screenshot 2024-06-25 153117