It seems that the formal meaning can be different, but this is not a good practice.
The following email addresses are different for the Invantive synchronize statement:
john.doe@acme.com
John.Doe@ACME.com
Both email addresses are considered equal by ActiveCampaign, leading to the “duplicate email” error.
It is highly recommended to make sure all contacts have a lower-case email address.
The following code makes all contacts have a lower-case email address:
declare
l_cnt_casing pls_integer;
begin
create or replace table Contacts_Ist@inmemorystorage
as
select *
from v3.Contacts
;
--
l_cnt_casing := 0;
for r in
( select t.id
, t.Email
from Contacts_Ist@inmemorystorage t
where t.Email != lower(t.Email)
order
by t.Email
)
loop
dbms_output.put_line('Correct casing of ' || r.Email || ' (ID #' || to_char(r.Id) || ').');
update Contacts
set Email = lower(r.Email)
where id = r.id
;
l_cnt_casing := l_cnt_casing + 1;
end loop;
dbms_output.put_line
( 'Corrected casing of '
|| to_char(l_cnt_casing)
|| ' contact email addresses.'
);
end;