srv_Stop_server_local


int srv_Stop_server_local(const char * server_name, int wait_seconds, cdp_t cdp);
function srv_Stop_server_local(server_name : PChar; wait_seconds : Integer; cdp : cdp_t) : Integer;
Parametry
server_name
jméno, pod nímž je lokální server (databáze) zaregistrován
wait_seconds
maximální počet sekund čekání na odpojení klientů
cdp
kontextová proměnná klienta s vytvořeným spojením na zastavovaný server
Popis
Funkce slouží k zastavení lokálního serveru běžícího nad databází jménem server_name.
Parametr wait_seconds udává maximální počet sekund, po který server bude čekat na odpojení všech klientů. Server skončí po odpojení posledního klienta, nejdéle však po uplynutí zadaného času.
Je-li parametr cdp různý od NULL (nil), pak funkce použije pro odpojení od serveru klientské spojení s touto kontextovou proměnnou.
Funkce může použít pro zastavení serveru několik strategii podle zadaných hodnot parametrů:
- Na Unixu pokud cdp je NULL a wait_seconds je 0, pak se funkce pokusí zastavit server pomocí příkazu kill. Úspěšnost této cesty závisí na systémovém účtu, pod nimž běží proces volající tuto funkci.
- Na MSW pokud cdp je NULL a wait_seconds je 0 a server běží jako služba, pak se funkce pokusí zastavit server pomocí administrativního rozhraní na ovládání systémových služeb. Úspěšnost této cesty závisí na systémovém účtu, pod nimž běží proces volající tuto funkci.
- Pokud cdp není NULL, pak funkce vyšle serveru příkaz skončit přes spojení s touto kontextovou proměnnou. Této cesta bude úspěšná, pokud klient cdp je přihlášen na SQL serveru pod uživatelském účtem, který je členem skupiny provozních správců CONFIG_ADMIN.
- Pokud cdp je NULL, pak funkce vytvoří nové anonymní spojení na server a vyšle mu příkaz skončit. Úspěšnost této cesty závisí na tom, zda anonymní uživatel SQL serveru je členem skupiny CONFIG_ADMIN.
Návratová hodnota
Funkce vrací nulu při úspěchu, číslo chyby (různých druhů) při neúspěchu.
Příklad
srv_Stop_server_local("accounting", 60, NULL);
Viz