Dator > Microsoft SQL lagrade procedurer

  • Microsoft SQL lagrade procedurer


  • Microsoft SQL lagrade procedurer är grupper av Transact- SQL (T-SQL ) kommandon eller uttalanden som lagras på servern. Lagrade procedurer bör användas istället för inline SQL , som skapas dynamiskt av ansökan . Program och webbplatser öppna en databas oftast förlitar sig på lagrade procedurer för att utföra kommandon databas och hämta data . När du väl skapat ett förfarande kommer att lagras på SQL Server som databas objekt . Lagrade procedurer har några viktiga fördelar som motiverar användningen under inline SQL , inklusive säkerhet , enkel uppdateringar och hastighet .

    struktur en lagrad procedur

    En lagrad procedur är uppdelad på två huvuddelar , en förklaring om den lagrade proceduren namn och dess parametrar och den grupp av T-SQL -kommandon . Parametrar används i allmänhet på samma sätt som vanliga variabler i en T-SQL-uttryck som de föregås med symbolen @ och måste deklareras med en datatyp . Skillnaden mellan lagrade proceduren parametrar och standard variabler är att parametrar skickas i samband med utförandet samtal genom ansökan eller webbplats .

    Skapa eller ändra en Stored Procedure

    T-SQL -kommandot CREATE FÖRFARANDE används för att skapa lagrade procedurer. Följande är ett enkelt exempel på en lagrad procedur .

    ANVÄNDNING MyDatabase
    SKAPA FÖRFARANDE dbo. SampleProc
    ( @ param1 Varchar (20))

    SELECT
    Kol1 ,
    Col2
    FRÅN TableName
    VAR Col3=@ param1

    Detta uttalande skulle skapa en lagrad procedur som heter SampleProc i MyDatabase . Efter den lagrade proceduren har skapats kan du använda ALTER arbetsordningen eller DROP FÖRFARANDE kommandon . ALTER FÖRFARANDE kommando kommer att uppdatera det nuvarande förfarandet med uttalande efter det . Den DROP FÖRFARANDE kommando kommer att ta bort det förfarande från databasen .

    Använda en Stored Procedure

    för ett program eller hemsida för att få tillgång till lagrad procedur , en databas samtal med hjälp av EXECUTE -kommandot skickas till servern . Utför kommandot för den lagrade proceduren skapade tidigare skulle vara följande :

    EXECUTE MyDatabase. dbo. SampleProc @ param1=' SampleInput '

    I exemplet , ett rekord uppsättning två kolumner skulle föras tillbaka , men kan lagrade procedurer returnera ett statusvärde av framgång eller misslyckande eller returnera flera rekord datamängder.

    Fördelar med att använda lagrade procedurer

    Använda lagrade procedurer i stället för inline SQL kommer att ge dig ett antal fördelar . Enligt Microsoft Developer Network Books Online , fyra fördelarna med att använda lagrade procedurer är att de tillåter modulär programmering , möjliggöra snabbare verkställighet , kan minska trafiken i nätverket och kan användas som en säkerhetsmekanism . Uppdatering lagrade procedurer är lättare än att uppdatera inline SQL eftersom den lagrade proceduren lagras på servern på ett ställe . När den lagrade proceduren ändras kommer alla program eller webbplats ringer detta förfarande har den uppdaterade kommandon . Om du har använt inline SQL , skulle förändringen måste göras flera gånger i ansökan eller websida kod .

    Lagrade procedurer är i allmänhet snabbare än inline SQL sedan en lagrad procedur kommer att uppfyllas eftersom det är skapat i stället för som den körs . Detta kommer att påskynda transaktionen något . Vissa T-SQL-satser kan vara hundratals rader med kommandon . Om dessa kommandon skapas inline , måste de flyttas över nätverket , men lagrade procedurer bara måste ha namnet på den överförda förfarandet . Eftersom lagrade procedurer databasobjekt , kan de vara säkrade precis som en databastabell . Endast vissa användare kan få tillgång att köra en lagrad procedur om det behövs .

    lagrade procedurer Best Practices

    Det finns många olika bästa praxis som utvecklare bör följa när man utformar lagrade procedurer. Du ska aldrig använda prefixet av sp_ eftersom det endast används för systemets lagrade procedurer som sp_who , sp_executeSQL och andra system-relaterade förfaranden . Du bör använda den fullständiga sökvägen för de databasobjekt när du hänvisar till dem i lagrade procedurer. Ett exempel på en fullständig sökväg för ett objekt skulle vara DatabaseName. Schema. ObjectName .


Previous:nothing Next:hur man skapar en hash karta





Relaterade artiklar


  • hur man skapar en hash karta
  • directx Visual Basic tutorial
  • hur du uppgraderar Visual Basic 6 kod
  • vad är hårdvara i ett datorsystem?
  • hur man installerar komponenter hårdvara
  • hur man skriver datafiler i Visual Basic
  • hur man skriver manus programmering
  • hur man installerar ljudkort hårdvara ljud
  • hur man ändrar färg kommandot i ett Visual Basic 6.0
  • Hur konvertera Fortran till Visual Basic