El problema es que el parámetro del procedimiento tiene el mismo nombre que una columna en las tablas. Cuando se refiere a propertyid en las consultas, usa la columna, no el parámetro. Los nombres de columnas y variables no distinguen entre mayúsculas y minúsculas, por lo que no importa que haya escrito uno de ellos PropertyID y el otro propertyId .
Utilice un nombre diferente para el parámetro, p. p_propertyId
Además, no hay necesidad de dos consultas, puede hacerlo en uno con JOIN .
UPDATE sales.florida AS s
CROSS JOIN (
SELECT *
FROM annuals.florida
WHERE propertyId = p_propertyId
LIMIT 1) AS a
SET s.SitusLongitude = a.SitusLongitude, s.SitusLatitude = a.SitusLatitude
WHERE s.PROPERTYUNIQUEID = p_propertyId
Tenga en cuenta que usar LIMIT sin ORDER BY significa que la fila seleccionada será impredecible.