Oracle SQL Developer - II

Oggi, grazie alla mia grande agitazione nel battere sulla tasteria ho fatto una scoperta che mi ha fatto fare un urlo di gioia: con l’ultima versione di SQL Developer (di cui ho scritto qualche giorno fa) è ancora possibile scorrere la “history” degli statement eseguiti, è solo cambiata la combinazione di tasti.  Come ho gia [...]

Oracle SQL Developer

Recentemente ho “rispianato” il mio PC, in realtà ho cambiato hard-disk e quindi ho (qualcun’altro ha) intallato Winzoz xp. In questa operazione ho compiuto una grande rivoluzione: non ho installato nessuna versione di Oracle server. Ebbene devo confessare che sono uno dei pochi che rimpiange la definitiva scomparsa, con oracle 11g di SQL*Plus Worksheet. Una [...]

Clusters (Object Type) Parte II

Nel post precedente ho detto che i cluster sono un modo per raggruppare due o più tabelle in uno stesso blocco, in realtà questo non è del tutto corretto, perché può anche esserci un caso particolare di cluster “single table” cioè con una tabella sola. Anche nell’esempio che ho mostrato ieri ho creato un cluster [...]

Clusters (Object Type) - Parte I

Comincio precisando che questo post riguarda il tipo oggetto Oracle chiamato Clusters, che non ha niente a che vedere con RAC. Distribuirò la descrizione dei cluster in più post. In questa parte farò solo una breve introduzione.
I cluster sono un modo per raggruppare due o più tabelle (in 10gR2 al massimo 32) in uno [...]

Index Organized Tables

Continua per me un periodo intenso che mi impedisce di scrivere con la regolarità che vorrei su questo blog. Gli impegni del lavoro sono in questo periodo molti e pressanti, in più a stento cerco di proseguire la mia preparazione per l’esame di certificazione Oracle database 10g OCP.
Per dare segni di vita scrivo velocemente questo [...]

V$SQL_BIND_CAPTURE e TRACE 10046, stesso baco?

Un paio di giorni fa mi sono trovato ad indagare su un problema giratomi da un programmatore. In pratica succede che sporadicamente un programma segnala un errore ORA-01722 durante una operazione di insert. Il programma è un programma Java, con driver JDBC. La stessa query viene eseguita migliaia di volte al giorno senza problemi.
Essendo [...]

TIMESTAMP e TIME ZONE

Recentemente ho riscontrato un problemino della nostra applicazione con il tipo dati TIMESTAMP, ciò mi ha indotto ad approfondire il tema, cercherò ora di riassumere un po’ le situazione ma non garantisco la chiarezza dell’esposizione.
Oracle prevede tre tipi dato “timestamp”:

TIMESTAMP
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE

il tipo TIMESTAMP WITH TIME ZONE utilizza due byte [...]

Gestione di Vincoli di Integrità

Pur troppo nell’azienda in cui lavoro, come immagino in molte altre, nella progettazione della base dati si è scelto di fare un uso molto blando della definizione dei vincoli di integrità sul database (Integrity Constraints). Questo significa che non vengono mai definite chiavi esterne (Foreign Key) o chiavi primarie (Primary Key) sono vincoli di non [...]

SQL JOIN

oggi su cdos è apparsa una questione secondo me bizzarra su una LEFT JOIN molto particolare:

Hi,

create table a (num integer)
create table b (num integer)

insert into a values (1)
insert into b values (2)

select * from a left join b
on b.num = 123
where a.num = 1 and b.num is null

MySQL & Oracle 10i show the following result:
1 [...]

TO_NUMBER, TO_CHAR, TO_DATE e NLS

L’altro giorno, ho parlato di un baco segnalato (fra gli altri) che riguarda la funzione TO_NUMBER.
Nella mia esperienza ho riscontrato che con i tipi dato NUMBER, DATE viene fatta molta confusione e le funzioni TO_NUMBER, TO_DATE e TO_CHAR non sono ben comprese. Per quanto riguarda le date mi è stato facile capire il funzionamento delle [...]