Structured Query Language: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m fix formattazione, rimuovo virgolette non necessarie |
m sistemo spazi dopo i titoli |
||
Riga 14:
|influenzato_da = <!-- Lista di linguaggi che hanno influenzato il linguaggio in esame, citare le fonti -->
|ha_influenzato = <!-- Lista di linguaggi influenzati dal linguaggio in esame, citare le fonti -->
|implementazione_riferimento = <!-- Implementazione di riferimento: compilatore o interprete? -->
|sistema_operativo = <!-- S.O. supportati dall'impl. di riferimento -->
Riga 93 ⟶ 92:
==== Operatori stringa ====
Gli operatori stringa accettano come operandi due stringhe e restituiscono un valore booleano o stringa.
===== Operatore LIKE =====
L'operatore {{code|LIKE}} (viene usato anche MATCHES), di solito, è alla base dei criteri di ricerca per parole chiave e delle query effettuate da un motore di ricerca.
Riga 106 ⟶ 103:
Nonostante questa completezza, il driver OLE DB per Windows ha un bug noto: l'operatore jolly {{code|*}} è utilizzabile solo all'interno dell'applicazione, mentre via OLE DB/ODBC deve essere utilizzato il classico simbolo {{code|%}}.
===== Operatori SIMILAR TO e REGEXP =====
L'operatore SIMILAR TO è parte dello standard SQL e consente di verificare se una stringa corrisponde a una data [[espressione regolare]]. La sintassi utilizzata è differente dagli standard ''de facto'' che sono stati stabiliti da [[Perl]] e da [[POSIX]] e per questo motivo l'adozione di tale operatore da parte dei produttori è piuttosto limitata.
Riga 117 ⟶ 112:
===== BINARY =====
Questo operatore serve a rendere case-sensitive l'applicazione delle espressioni regolari, cioè a far sì che le lettere maiuscole siano considerate differenti dalle minuscole.
===== COLLATE =====
Questo operatore serve a specificare quale collazione (insieme di regole per l'ordinamento di un set di caratteri) deve essere utilizzata nell'espressione corrente.
Riga 139 ⟶ 132:
=== Operatori logici ===
Gli operatori logici di SQL appartengono agli operatori logici [[logica booleana|booleani]] e sono [[Congiunzione logica|AND]] (e), [[Disgiunzione logica|OR]] (o, oppure), [[Contraddizione|NOT]] (non), [[Disgiunzione esclusiva|XOR]] (detto anche "OR esclusivo").
* L'operatore logico '''AND''', che lega due condizioni, restituisce il valore TRUE se e solo se entrambi gli operandi sono veri.
Riga 147 ⟶ 139:
=== Operatori tra bit ===
Lo standard SQL non prevede questa famiglia di operatori, tuttavia essa è presente in molte implementazioni. Questi operatori effettuano le operazioni AND, OR, NOT e XOR a livello di bit.
=== Regole generali per gli operatori ===
Un'espressione è costituita da un valore o da un'operazione che restituisce un valore. Questa definizione è ricorsiva: le espressioni possono essere annidate. Poiché gli operatori restituiscono sempre un valore, è perfettamente lecito combinarli tra loro per formare condizioni via via più complesse.
Riga 242 ⟶ 232:
=== La transazione ===
Una transazione è un blocco di istruzioni che sono strettamente correlate tra loro. Nel caso in cui per qualsiasi motivo (un errore interno al DBMS, un errore nelle istruzioni SQL, un errore di sistema) una delle istruzioni non arrivi a compimento, l'intera transazione verrà annullata. Si dice quindi che una transazione è un'operazione ''atomica'', ossia non è divisibile: se non viene eseguita interamente, non verrà eseguita affatto. Questo è uno degli strumenti più utilizzati per garantire l'integrità dei dati.
Riga 380 ⟶ 369:
==== Tabelle derivate ====
Le tabelle derivate sono un caso particolare di subquery: una Select interna estrae i dati che verranno poi interrogati dalla select esterna.
|