I am getting a mistake when running the next SQL against oracle 10g (10.2..1.):

UPDATE fx_datumvcompgeneric AS c
   SET mp =  (SELECT p.mp
                FROM fx_propertyattrsingletscomp AS p
               WHERE c.var_container = p.id
             )
 WHERE c.mp IS NULL 

The mistake is: ORA-00971: missing SET keyword

We are carrying this out through JDBC, the top exception stack is:

java.sql.SQLException: ORA-00971: missing SET keyword

  oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
  oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
  oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
  oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745)
  oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:207)
  oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:957)
  oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1170)
  oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:1623)
  oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:1588)
  org.apache.commons.dbcp.DelegatingStatement.executeUpdate(DelegatingStatement.java:225)
  org.apache.commons.dbcp.DelegatingStatement.executeUpdate(DelegatingStatement.java:225)

We have done some web looking for that error and requested around people more knowledgeable with Oracle but can't appear to locate why that statement would make the error.

Thank you for any experience!

Eliminate both AS key phrases - Oracle does not like them here.

You cannot alias a table with AS within an update