Originariamente inviato da Shadow976
Comas grazie, che gentile.

Ma sei sicuro che le viste siano DEL TUTTO indipendenti dal particolare db utilizzato, requisito che per me è di fondamentale importanza? Inoltre ti chiedo, ma a questo punto perché non eliminare dal mio applicativo OGNI TRACCIA di query di selezione, facendo lavorare solo le viste? E infine, mi confermi che così il carico di lavoro è inferiore perché le informazioni sulla selezione non devono essere trasmesse al db in quanto si trovano già nel suo interno?

Assolutamente no, le viste non sono altro che "normali" istruzioni SQL "già pronte"
Ogni rdbms (SQL Server, MySQL, Oracle, PostgreSQL) utilizza un proprio "dialetto" che è certamente per molti versi rispettoso dello standard SQL ma altrettanto certamente ha alcuni suoi costrutti e forme "peculiari" (il discorso di creare un qualcosa che sia "assolutamente standard" per tutti i database è una cosa molto complessa, che potrebbe esulare dal presente thread, magari se ne può parlare in un altro...)

Sicuramente (come anche indicato dal link che ti avevo messo) il fatto di utilizzare oggetti (viste, stored procedures) già residenti nel database ottimizza di molto le prestazioni ed è una pratica consigliatissima

Ma ha anche degli altri vantaggi, secondo me non banali: immagina di dover eseguire una istruzione di select di alcuni campi di una tabella; se tu scrivi per esteso l'istruzione nel tuo applicativo, se ti capitasse di aver bisogno, per esempio, di richiamare anche un altro campo dovresti andare a modificare l'applicativo
Se invece la medesima select la fai richiamando, ad esempio la stored procedure "pippo" (o la vista "pluto") ti basterà andare a modificare solo questa (nel database) perchè tanto il tuo applicativo avrà sempre e solo l'istruzione "esegui pippo"