Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Stored o Vista?
venerdì 22 agosto 2008 - 09.30
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
chim
Profilo
| Newbie
13
messaggi | Data Invio:
ven 22 ago 2008 - 09:30
Buongiorno a tutti,
un consiglio, secondo voi per effettuare una select su un database (sql 2005) da un qualsiasi programma è 'meglio' utilizzare una stored procedure o una Vista?
O una stored che effettua la select su una vista?
Ciao a tutti
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
ven 22 ago 2008 - 09:47
>Buongiorno a tutti,
Ciao!
>un consiglio, secondo voi per effettuare una select su un database
>(sql 2005) da un qualsiasi programma è 'meglio' utilizzare una
>stored procedure o una Vista?
>O una stored che effettua la select su una vista?
Stored procedure e viste sono oggetti completamente differenti. Una vista è una tabella virtuale, è un SQL che viene lanciato quando la vista viene chiamata. Una Stored Procedure è una subroutine, un moduletto che ti permette di inserire logiche di programmazione utilizzando T-SQL e che, fra le altre cose, può anche effettuarti delle select.
Diciamo che spesso sono oggetti che vengono utilizzati per dare modularità e per permettere una migliore gestione della security. Infine, le Stored Procedure si salvano i piani di esecuzione.
Per quanto mi riguarda, creo viste per quell'insieme di dati che so che riutilizzerò spesso, ma poi rendo pubblica ed accessibile a chi usa l'applicazione solo Stored Procedure, in modo che solo chi ha sviluppato la procedura stessa decida cosa deve succedere sulle tabelle, totalmente private ed inaccessibili all'applicativo.
Quindi ti dico, a mio avviso, se quella select deve essere utilizzata in più punti, una vista falla comunque, ma poi io la richiamerei da una stored procedure. Mi dà più modularità e mi consente una miglior gestione della sicurezza.
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
chim
Profilo
| Newbie
13
messaggi | Data Invio:
ven 22 ago 2008 - 10:09
Ciao ALX_81,
grazie per la tua celere risposta, in effetti ho fatto cosi' come da te spiegato:
> Per quanto mi riguarda, creo viste per quell'insieme di dati che so che riutilizzerò spesso, ma poi rendo pubblica ed accessibile a chi usa l'applicazione
> solo Stored Procedure, in modo che solo chi ha sviluppato la procedura stessa decida cosa deve succedere sulle tabelle, totalmente private ed
> inaccessibili all'applicativo.
> Quindi ti dico, a mio avviso, se quella select deve essere utilizzata in più punti, una vista falla comunque, ma poi io la richiamerei da una stored
> procedure. Mi dà più modularità e mi consente una miglior gestione della sicurezza.
ossia richiamando da codice stored procedure anche per semplici query, stored che eseguono select su viste.
Il mio dubbio nasce dal fatto che sql deve compiere 2 passaggi (esecuzione vista, esecuzione stored), mi chiedevo se potesse esserci un modo 'migliore' a livello di prestazioni, a livello di sicurezza penso che quello citato sia indubbiamente il migliore
Ciao e grazie ancora
Buona giornata
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
ven 22 ago 2008 - 10:13
>ossia richiamando da codice stored procedure anche per semplici
>query, stored che eseguono select su viste.
>Il mio dubbio nasce dal fatto che sql deve compiere 2 passaggi
>(esecuzione vista, esecuzione stored), mi chiedevo se potesse
>esserci un modo 'migliore' a livello di prestazioni, a livello
>di sicurezza penso che quello citato sia indubbiamente il migliore
ma la vista non la deve "eseguire".. la richiama come se fosse una tabella..
vai tranquillo
>Ciao e grazie ancora
di nulla!
>Buona giornata
a te!
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !