SQL Server begynner/slutt

SQL Server begynner/slutt

Kontrollflyt er en universell byggestein i programmering. Det er derfor ingen overraskelse at SQL gir oss forskjellige kontrollflytkonsepter.

En slik konstruksjon er begynnelsen ... sluttuttalelser. Disse nøkkelordene oppretter en serie transakt-SQL-setninger ved å omslutte dem i start- og sluttklausulene. Uttalelsene vedlagt i disse uttalelsene utføres sekvensielt, og utfører oppgavene som er definert. En blokk med SQL -uttalelser er også kjent som en batch.

Vi vil være glade for å lede deg gjennom start- og sluttuttalelsene i SQL Server.

Uttalelse syntaks

Start- og sluttuttalelsene følger en moderat enkel syntaks, som vist i utdraget nedenfor:

BEGYNNE
SQL_Statement | Statement_block
SLUTT

De støttede argumentene er som vist:

  1. SQL_Statement | Statement_Block - Dette definerer en enkelt eller flere SQL -setninger (blokk) utført sekvensielt.

Du kan også hekke flere start- og sluttuttalelser.

Mens alle Transact-SQL-uttalelser er gyldige i en begynnelse ... sluttblokk, er det spesifikke utsagn som ikke bør grupperes i samme blokk.

SQL Server Begynn ... slutteksempel illustrasjoner

Følgende illustrerer hvordan vi kan bruke BEGIN- og END -setninger i SQL Server. Anta for eksempel at vi har en database og tabell med følgende poster.

Drop -databasen hvis eksisterer oppløsning;
opprette databaseresolver;
Bruk resolver;
slippbord hvis finnes oppføringer;
Lag bordoppføringer (
id int ikke null identitet (1,
1) Primærnøkkel,
Server_name varchar (50),
server_address varchar (255) ikke null,
kompresjon_metod varchar (100) standard 'ingen',
size_on_disk float ikke null,
Size_Compription Float,
total_records int ikke null,
init_date dato
);
sett inn
inn i
Oppføringer (servernavn,
server adresse,
komprimering_metod,
størrelse_on_disk,
størrelse_komprimert,
Total_records,
init_date)
verdier ('mysql',
'localhost: 3306',
'LZ77',
90.66,
40.04,
560000,
'2022-01-02'),
('Redis',
'localhost: 6307',
'Snappy',
3.55,
998.2,
100000,
'2022-03-19'),
('PostgreSql',
'localhost: 5432',
'pglz',
101.2,
98.01,
340000 ,
'2022-11-11'),
('Elasticsearch',
'localhost: 9200',
'LZ4',
333.2,
300.2,
1200000,
'2022-10-08'),
('Mongodb',
'localhost: 27017',
'Snappy',
4.55,
4.10,
620000,
'2021-12-12'),
('Apache Cassandra',
'localhost: 9042',
'ZSTD',
300.3,
200.12,
10000000,
'2020-03-21');

Vi kan lage et elementært eksempel på start/sluttuttalelsen som velger posten der servernavnet inneholder mysql.

Bruk resolver;
BEGYNNE
PLUKKE UT
*
FRA
Oppføringer e
HVOR
'Mysql' i (server_name);
SLUTT;

Kjører spørringen ovenfor skal returnere den samsvarende posten.

Slutter

Selv om eksemplet ovenfor er enkelt, illustrerer det implementeringen av begynnelsen ... sluttutsagn i SQL Server.

Vi håper målet med opplæringen vår ble oppnådd.