12 mar 2010

update lub insert bazy mysql w perlu

Jeśli w perlu za pomocą use DBD::ODBC; robimy update rekordu czy insert z polskimi znakami powiedzmy "ł" do bazy dodaje się zamiast litery "ł" znak "?".
Problem można ten obejść za pomocą sprytnego polecenia mysql "_latin2" które wstawiamy przed wstawianym stringiem.
Przykład poniżej:

UPDATE klient
SET
  branza = _latin2 'Gumowe artykuły|33241|2399'
WHERE
  idrek = 177221312