Problemet är att procedurparametern har samma namn som en kolumn i tabellerna. När du hänvisar till propertyid i frågorna använder den kolumnen, inte parametern. Kolumn- och variabelnamn är skiftlägesokänsliga, så det spelar ingen roll att du stavat ett av dem PropertyID och den andra propertyId .
Använd ett annat namn för parametern, t.ex. p_propertyId
Dessutom finns det inget behov av två frågor, du kan göra det i en med en 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
Observera att du använder LIMIT utan ORDER BY betyder att raden som väljs kommer att vara oförutsägbar.