PostgreSQL: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m robot Aggiunta: id |
Nessun oggetto della modifica |
||
Riga 25:
I database SQL conservano dati semplici in "[[flat tables]]" (tabelle piatte n.d.t.), richiedendo che sia l'utente a prelevare e raggruppare le informazioni correlate utilizzando le query.
Questo contrasta con il modo in cui sia le applicazione che gli utenti utilizzano i dati: come ad esempio in un
Convertire le informazioni dal mondo SQL a quello della
PostgreSQL può risolvere molti di questi problemi direttamente nel database. PostgreSQL permette agli utenti di definire nuovi tipi basati sui normali tipi di dato SQL, permettendo al database stesso di comprendere
PostgreSQL, inoltre, permette l'ereditarietà dei tipi, uno dei principali concetti della [[programmazione orientata agli oggetti]]. Ad esempio, si può definire un tipo codice_postale, quindi creare un tipo cap (codice di avviamento postale) o un tipo us_zip_code basato su di esso. Gli indirizzi nel database potrebbero quindi accettare entranbi i tipi, e regole specifiche potrebbero validare i
La programmazione del database stesso può ottenere grandi vantaggi dall'uso delle funzioni. La maggior parte dei sistemi SQL permette agli utenti di scrivere una procedura, un blocco di codice SQL che le altre istruzioni SQL possono richiamare. Comunque il SQL stesso rimane inadatto come linguaggio di programmazione, pertanto gli utenti possono sperimentare grandi difficoltà nel costruire logiche complesse. Ancora peggio, il SQL stesso non supporta molti dei principali operatori di base dei linguaggi di programmazione, come le [[Struttura di controllo | strutture di controllo]] di [[ciclo (informatica)| ciclo ]] e [[condizionale]]. Pertanto ogni venditore ha scritto le sue estensioni al linguaggio SQL per aggiungere queste caratteristiche, e pertanto queste estensioni non per forza operano su diverse [[piattaforma|piattaforme]] di database.
Riga 37:
In PostgresSQL i programmatori posono implementare la logica in uno dei molti linguaggi supportati.
*Un linguaggio nativo chiamato [[PL/PgSQL]] simile al linguaggio procedurale di Oracle [[PL/SQL]], che offre particolari vantaggi
*[[Wrappers]] per i più diffusi
*Le procedure che richiedono prestazioni maggiori e logiche di programmazione complesse possono utilizzare il [[C (linguaggio)|C]] ed il [[C plus plus|C++]].
*Inoltre è disponibile anche un interfacciamento all'esoterico linguaggio [[R]], ricco di funzioni statistiche e per il calcolo [[matrice (matematica)|matriciale]]
Il programmatore
Punti di forza della programmabilità di PostgreSQL:
|