Memberi parameter nama yang sama dengan kolom tabel adalah praktik yang buruk.
Jadi Anda harus mengubahnya:
CREATE OR REPLACE PROCEDURE UpdateSourceLog
( p_SourceLogId IN NUMBER, p_TotalRowCount IN INT,p_status IN VARCHAR)
AS
BEGIN
UPDATE SourceLog
SET Status = p_status,
TotalRowCount = p_TotalRowCount,
EndTime = SYSDATE
WHERE SourceLogId = p_SourceLogId;
COMMIT;
END;
Karena untuk saat ini, kemungkinan besar, Oracle memahaminya sebagai nama kolom dan hanya memperbarui kolom ke nilai dari kolom ini (tidak masuk akal sama sekali)