|
| MS SQL: View vs. Stored Procedure Fra : ///JJ |
Dato : 16-07-04 17:07 |
|
Er der én der ganske kort kan forklare hvornår man bruger Views vs Stored
Procedures?
De kan jo næsten det samme?
Bliver de ikke begge genereret ved kaldet? og bearbejdet server-side?
--
Mvh
///JJ
| |
Jens Gyldenkærne Cla~ (16-07-2004)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 16-07-04 21:20 |
|
///JJ skrev:
> Er der én der ganske kort kan forklare hvornår man bruger
> Views vs Stored Procedures?
> De kan jo næsten det samme?
Nej - på ingen måde.
Et view kan ikke noget - det er kun en anden måde at tilgå
tabeldata på - en form for gemt forespørgsel. Views kan dels bruges
til at lette arbejdet med komplekse forespørgsler (fordi joinudtryk
mv. kan lægges i et view) og dels bruges til at styre adgangen til
tabeller på en enkel måde.
Lagrede procedurer (stored procedure, sp) kan til gengæld meget. De
kan arbejde med variable, modtage og returnere data og meget andet.
Et view er et statisk objekt der kan bruges i sql-kommandoer de
fleste steder hvor man ellers bruger en tabel:
SELECT * FROM mintabel
vs.
SELECT * FROM mitview
En lagret procedure er derimod en kommando i sig selv:
EXEC minprocedure
eller
EXEC minprocedure @minvariabel = 42
> Bliver de ikke begge genereret ved kaldet?
Begge bliver genereret af en CREATE-kommando (hhv. CREATE VIEW og
CREATE PROC), og gemmes herefter på serveren - men den egenskab
deler de med næsten alle objekter på databaseserveren (CREATE
TABLE, DATABASE, TRIGGER, INDEX, m.fl.)
--
Jens Gyldenkærne Clausen
»Diplomatiet består netop i, at de gamle kommatister kan få lov til
at tro, at de har vundet. Men i virkeligheden har de tabt.«
Ole Togeby i Information
| |
///JJ (17-07-2004)
| Kommentar Fra : ///JJ |
Dato : 17-07-04 17:18 |
|
Jens Gyldenkærne Clausen wrote:
> ///JJ skrev:
>
>> Er der én der ganske kort kan forklare hvornår man bruger
>> Views vs Stored Procedures?
>> De kan jo næsten det samme?
>
<snip: fin forklaring!>
Mange tak!
Mvh
///JJ
| |
Kristian Damm Jensen (19-07-2004)
| Kommentar Fra : Kristian Damm Jensen |
Dato : 19-07-04 20:13 |
|
"///JJ" <nospam@tdcadsl.dk> wrote in message news:<40f7fd2f$0$183$edfadb0f@dtext01.news.tele.dk>...
> Er der én der ganske kort kan forklare hvornår man bruger Views vs Stored
> Procedures?
> De kan jo næsten det samme?
> Bliver de ikke begge genereret ved kaldet? og bearbejdet server-side?
Det er en umådeligt forsimplet opfattelse af de to ting.
Et view er ikke andet end en short-hand for en given select man ønsker
at genbruge.
Stored procedures er skrevet i et fuldstændigt programmeringssprog.
Jeg har fx været med til at implementere hele forretningslogikken for
økonomisystem, pg et policeadministrationssystem i stored procedures.
Hermed mener jeg, at det eneste, der *ikke* var kodet i stored
procedures var formatering og præsentation af data.
Venlig hilsen
Kristian
| |
|
|