Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-10-2024 04:50 AM
The following code works perfectly fine:
df = spark.createDataFrame([('A', 1), ('B', 2)])
df.createOrReplaceTempView('temp')
spark.sql("""
SELECT
IDENTIFIER(:col)
FROM
temp
""",
args={
"col": "_1"
}
).display()
However if we instead want to do an UPDATE the same logic no longer functions:
spark.sql("""
UPDATE
temp
SET
IDENTIFIER(:col) = "C"
""",
args={
"col": "_1"
}
)Here we get the following error:
[PARSE_SYNTAX_ERROR] Syntax error at or near '(': missing EQ. SQLSTATE: 42601
Updating a temp table is not allowed, but used this quickly for a debug example.
When running the following UPDATE we get the correct error message "UPDATE TABLE is not supported temporarily.":
spark.sql("""
UPDATE
temp
SET
_1 = "C"
""")