Why does appending data with PySpark raise a "SQLServerException: CREATE TABLE permission denied" exception?
04:11 03 Nov 2025

In my Databricks cluster I'm trying to write a DataFrame to my table with the following code:

df.write.jdbc(url=JDBCURL, table=table_name, mode="append")

And this line fails with

Py4JJavaError: An error occurred while calling o53884.jdbc. :

com.microsoft.sqlserver.jdbc.SQLServerException: CREATE TABLE permission denied in database '[REDACTED]'. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:265) at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1676)

What I don't understand is, I'm not trying to create a table, I'm trying to append data to a table that already exists.

In this example, the user I specified in JDBCURL has SELECT, INSERT, UPDATE and DELETE rights on the destination schema.

python sql pyspark databricks