Llamada estándar UPSERT de SQL

Estoy buscando un SQL estándar "UPSERT"declaración. Una llamada para insertar y actualizar si existe.

Estoy buscando una llamada de trabajo, eficiente y multiplataforma.

He vistoMERGE, UPSERT, REPLACE, INSERT .. ON DUPLICATE UPDATE pero ninguna declaración satisface las necesidades.

Por cierto, yo uso MYSQL y HSQLDB para unitests. Entiendo que HSQLDB es limitado y puede que no cubra lo que necesito, pero no podría encontrar una forma estándar incluso sin él. Una declaración de que solo MYSQL y HSQLDB también será suficiente por ahora.

He estado mirando alrededor por un tiempo y no pude obtener una respuesta.

Mi mesa:

CREATE TABLE MY_TABLE (
  MY_KEY varchar(50) NOT NULL ,
  MY_VALUE varchar(50) DEFAULT NULL,
  TIME_STAMP bigint NOT NULL,
  PRIMARY KEY (MY_KEY)
);

¿Alguna idea?

Respuestas a la pregunta(2)

Su respuesta a la pregunta