? SQL är ett programmeringsspråk för relationsdatabaser . Bortom enkla funktioner och frågan sökord , har den förmågan att lagra förfaranden , som är sammansättningar av enskilda frågor för att generera specifika rapporter . Dessa förfaranden kan ha parametrar som refererar till specifika datatyper och funktioner . I SQL -programmering , är en parameter i stort sett liknar ett funktionsanrop eller header samtal i ett skriptspråk . Parameterformatet
Lagrade procedurer kallar parametrar med ett namn . I de flesta fall börjar det namnet med en speciell karaktär , till exempel , kallar Microsofts SQL genomförandet parametrar med " @ " symbolen . Efter parameternamnet är datatypen , som kan vara någon giltig SQL datatyp , t.ex. INT och STRNG . I SQL- implementationer , som Postgres , där symbolen "@" inte är skyldig att flagga en parameter namn , se till att parametern namnet inte matchar ett bord namn i databasen .
Parameter Nyckelord
en parameter kan ha ett valfritt sökord i slutet - nyckelorden är " IN " , " OUT " och " INOUT " . Om parametern inte har något sökord anges , behandlas det som om " IN " sökord användes . Den " IN " nyckelordet används för en ingående parameter , är den " OUT " sökord som används för en utgång parameter , och " INOUT " är kontextuellt identifieras när proceduren körs .
Fördelar Utgångar
användningen av inmatningsparametrar är ganska enkelt - genom att definiera en ingång parameter med en lätt - till - ihåg namn , gör du det lättare att räkna ut vad det gör när en fråga undersöks sex månader efter att den skrivits - men utparametrarna kräver lite mer förklaring . Den största fördelen med produktionen parametrar är att de ger ett bekvämt sätt att bunta ihop funktioner som returnerar flera kolumner med data . Parameternamnen också hamna definiera kolumnnamn på utdataparametrar .
Namnge Parametrar i funktioner
SQL förmåga att namnet parametrar används också flitigt för att göra funktionerna lättare att läs sex månader efter att de har kodats . En begränsning av interna parameternamn är att de inte behandlas av SQL i sin standard genomförande , de existerar endast till förmån för den mänskliga läsaren . Därför , har du fortfarande att hänvisa till de variabler som de definierar som $ 1 eller $ 2 inom proceduranropet . Addera