Jul 17, 2016

Προσοχή στις ρυθμίσεις NLS του SQL Developer


Στις ρυθμίσεις του SQL Developer υπάρχει ένα ειδικό tab για τις ρυθμίσεις του NLS που αφορά την αρχικοποίηση του session του χρήστη (πρακτικά το view NLS_SESSION_PARAMETERS)
Το default setting έχει μάλλον την τιμή "BYTE" ως length semantics πράγμα που σημαίνει πως εάν δώσουμε την εντολή 'CREATE TABLE' ή εάν κάνουμε 'Import data' (πχ από ένα excel spreadsheet) κατασκευάζοντας κατά συνέπεια έναν καινούργιο πίνακα, τότε θα διατηρηθούν τα byte (και όχι τα character) semantics ως προς το μέγεθος των δεδομένων που μπορεί να κρατήσουν οι varchar2 κολόνες.
Αν θέλουμε να αλλάξουμε αυτή την συμπεριφορά τότε είτε αλλάζουμε τις ρυθμίσεις NLS του SQL Developer είτε σε Length --> CHAR είτε επιλέγουμε το checkbox "Skip NLS settings" που θα χρησιμοποιήσει τις ρυθμίσεις της database που προσπαθούμε να συνδεθούμε.

No comments: