Stáhnout PDF
1. Jaké jsou dva režimy ověřování na serveru SQL Server?
Existují dva režimy ověřování -
- Režim Windows
- Smíšený režim
Režimy lze změnit výběrem nabídky nástrojů vlastností konfigurace serveru SQL a výběrem stránky zabezpečení.
2. Co je SQL Profiler?
SQL Profiler je nástroj, který umožňuje správci systému sledovat události na serveru SQL. Používá se hlavně k zachycení a uložení dat o každé události souboru nebo tabulky pro analýzu.
3. Co je rekurzivní uložená procedura?
SQL Server podporuje rekurzivní uloženou proceduru, která volá sama. Rekurzivní uloženou proceduru lze definovat jako metodu řešení problému, kdy je řešení doručeno opakovaně. Může vnořit až 32 úrovní.
CREATE PROCEDURE [dbo].[Fact](@Number Integer,@RetVal Integer OUTPUT)ASDECLARE @In IntegerDECLARE @Out IntegerIF @Number != 1BEGINSELECT @In = @Number - 1EXEC Fact @In, @Out OUTPUT - Same stored procedure has been called again(Recursively)SELECT @RetVal = @Number * @OutENDELSEBEGINSELECT @RetVal = 1ENDRETURNGO
4. Jaké jsou rozdíly mezi místními a globálními dočasnými tabulkami?
- Místní dočasné tabulky jsou viditelné, když existuje připojení, a jsou odstraněny, když je připojení ukončeno.
CREATE TABLE #
- Globální dočasné tabulky jsou viditelné pro všechny uživatele a jsou odstraněny, když je uzavřeno připojení, které je vytvořilo.
CREATE TABLE ##
5. Co je to CHECK omezení?
Omezení CHECK lze použít na sloupec v tabulce k omezení hodnot, které lze umístit do sloupce. Omezením kontroly je vynucení integrity.
6. Mohou být servery SQL propojeny s jinými servery?
Server SQL lze připojit k jakékoli databázi, která má poskytovatele OLE-DB, který poskytuje odkaz. Příklad: Oracle má poskytovatele OLE-DB, který má odkaz pro připojení ke skupině serverů SQL.
7. Co je dílčí dotaz a jeho vlastnosti?
Dílčí dotaz je dotaz, který lze vnořit do hlavního dotazu, jako jsou příkazy Vybrat, Aktualizovat, Vložit nebo Odstranit. To lze použít, když je povolen výraz. Vlastnosti dílčího dotazu lze definovat jako
- Dílčí dotaz by neměl mít pořadí podle klauzule
- Dílčí dotaz by měl být umístěn na pravé straně operátoru porovnání hlavního dotazu
- Dílčí dotaz by měl být uzavřen v závorkách, protože je třeba jej provést nejprve před hlavním dotazem
- Lze zahrnout více než jeden dílčí dotaz
8. Jaké jsou typy dílčích dotazů?
Existují tři typy dílčích dotazů -
- Jednorázový dílčí dotaz, který vrací pouze jeden řádek
- Víceřádkový dílčí dotaz, který vrací více řádků
- Vícenásobný sloupcový dílčí dotaz, který vrací více sloupců do hlavního dotazu. S tímto výsledkem dílčího dotazu bude proveden hlavní dotaz.
9. Co je agent serveru SQL?
Agent serveru SQL Server hraje zásadní roli v každodenních úlohách správce serveru SQL (DBA). Účelem agenta serveru je snadno implementovat úkoly pomocí plánovače, který umožňuje spuštění našich úloh v naplánovaném datu a čase.
10. Co jsou naplánované úlohy na serveru SQL Server?
Naplánované úlohy nebo úlohy se používají k automatizaci procesů, které lze spustit v naplánovaném čase v pravidelném intervalu. Toto plánování úkolů pomáhá omezit lidské zásahy během noci a krmení lze provádět v určitou dobu. Uživatel si může také objednat úkoly, ve kterých má být vygenerován.
11. Co je COALESCE na serveru SQL Server?
COALESCE se používá k vrácení prvního nenulového výrazu v argumentech. Tato funkce se používá k vrácení nenulové hodnoty z více než jednoho sloupce v argumentech.
Příklad -
Select COALESCE(empno, empname, salary) from employee;
12. Jak lze výjimky řešit v programování serveru SQL?
Výjimky se zpracovávají pomocí konstrukcí TRY ---- CATCH a jedná se o psaní skriptů uvnitř bloku TRY a zpracování chyb v bloku CATCH.
13. Jaký je účel funkce FLOOR?
Funkce FLOOR se používá k zaokrouhlení neceločíselné hodnoty na předchozí nejmenší celé číslo. Je uveden příklad
FLOOR(6.7)
Vrací 6.
14. Můžeme zkontrolovat zámky v databázi? Pokud ano, jak můžeme provést tuto kontrolu zámku?
Ano, můžeme zkontrolovat zámky v databázi. Toho lze dosáhnout pomocí vestavěné uložené procedury s názvem sp_lock.
15. Jaké je použití funkce SIGN?
Funkce SIGN se používá k určení, zda je zadané číslo kladné, záporné a nula. Tím se vrátí +1, -1 nebo 0.
Příklad -
SIGN(-35) returns -1
16. Co je to Trigger?
Spouštěče se používají k provedení dávky kódu SQL při provádění příkazů pro vložení nebo aktualizaci nebo odstranění u tabulky. Spouštěče se automaticky spustí nebo provedou při změně dat. Lze jej provést automaticky při operacích vložení, odstranění a aktualizace.
17. Jaké jsou typy spouštěčů?
Existují čtyři typy spouštěčů, kterými jsou:
- Vložit
- Vymazat
- Aktualizace
- Namísto
18. Co je sloupec IDENTITY ve výpisech vložení?
Sloupec IDENTITY se ve sloupcích tabulky používá k vytvoření tohoto sloupce jako přírůstkové číslo Auto nebo náhradní klíč.
19. Co je to hromadná kopie v SQL?
Bulkcopy je nástroj používaný ke kopírování velkého množství dat z tabulek. Tento nástroj se používá k načtení velkého množství dat na serveru SQL Server.
20. Jaký dotaz se použije k získání seznamu spouštěčů v databázi?
Dotaz na získání seznamu spouštěčů v databázi -
Select * from sys.objects where
21. Jaký je rozdíl mezi UNION a UNION ALL?
- UNION: K výběru souvisejících informací ze dvou tabulek se používá příkaz UNION. Je to podobné jako příkaz JOIN.
- UNION All: Příkaz UNION ALL se rovná příkazu UNION, kromě toho, že UNION ALL vybere všechny hodnoty. Neodstraní duplicitní řádky, místo toho načte všechny řádky ze všech tabulek.
22. Jak jsou zastoupeny globální dočasné tabulky a její rozsah?
Globální dočasné tabulky jsou před názvem tabulky reprezentovány znakem ##. Rozsah bude mimo relaci, zatímco místní dočasné tabulky jsou uvnitř relace. ID relace najdete pomocí @@ SPID.
23. Jaké jsou rozdíly mezi uloženou procedurou a dynamickým SQL?
Uložená procedura je sada příkazů, která je uložena v kompilované podobě. Dynamic SQL je sada příkazů, které se dynamicky vytvářejí za běhu a nebudou uloženy v databázi a budou se jednoduše spouštět za běhu.
24. Co je třídění?
Třídění je definováno tak, aby určovalo pořadí řazení v tabulce. Existují tři typy pořadí řazení -
- Rozeznává velká a malá písmena
- Nerozlišují se malá a velká písmena
- Binární
25. Jak můžeme zjistit počet záznamů v tabulce?
Níže jsou uvedeny dotazy, které lze použít k získání počtu záznamů v tabulce -
Select * fromSelect count(*) from Select rows from sysindexes where id=OBJECT_ID(tablename) and indid<2
26. Jaký příkaz se používá k získání verze serveru SQL?
Select SERVERPROPERTY('productversion')
se používá k získání verze serveru SQL.
27. Co je příkaz UPDATE_STATISTICS?
Příkaz UPDATE_STATISTICS se používá k aktualizaci indexů v tabulkách, pokud v indexech došlo k velkému množství odstranění nebo úprav nebo hromadného kopírování.
28. Jaké je použití příkazu SET NOCOUNT ON / OFF?
Ve výchozím nastavení je NOCOUNT nastaven na VYPNUTO a vrací počet ovlivněných záznamů, kdykoli je příkaz spuštěn. Pokud uživatel nechce zobrazit počet ovlivněných záznamů, může být explicitně nastaven na ON- (SET NOCOUNT ON).
29. Která tabulka serverů SQL se používá k uložení skriptů uložených procedur?
Sys.SQL_Modules je tabulka serveru SQL, která se používá k ukládání skriptu uložené procedury. Název uložené procedury je uložen v tabulce s názvem Sys.Procedures.
30. Co jsou kouzelné tabulky na serveru SQL Server?
Během operací DML, jako je Vložit, Odstranit a Aktualizovat, vytváří SQL Server magické tabulky, které uchovávají hodnoty během operací DML. Tyto kouzelné tabulky se používají uvnitř spouštěčů pro datovou transakci.
31. Jaký je rozdíl mezi SUBSTR a CHARINDEX na serveru SQL Server?
Funkce SUBSTR se používá k vrácení konkrétní části řetězce v daném řetězci. Funkce CHARINDEX ale dává pozici znaku v daném zadaném řetězci.
SUBSTRING('Smiley',1,3)
Dává výsledek jako Smi
CHARINDEX('i', 'Smiley',1)
Dává 3 jako výsledek, jak jsem se objeví ve 3 rd pozici řetězce
32. Jak můžete vytvořit přihlášení?
K vytvoření přihlášení můžete použít následující příkaz
CREATE LOGIN MyLogin WITH PASSWORD = '123';
33. Co je operátor ISNULL ()?
Funkce ISNULL se používá ke kontrole, zda je daná hodnota na serveru NULL nebo ne NULL. Tato funkce také umožňuje nahradit hodnotu NULL.
34. Jaké je použití klauzule FOR?
Klauzule FOR se používá hlavně pro možnosti XML a prohlížeče. Tato klauzule se používá hlavně k zobrazení výsledků dotazu ve formátu XML nebo v prohlížeči.
35. Jaký bude maximální počet indexů v tabulce?
Pro SQL Server 2008 100 lze použít index jako maximální počet na tabulku. 1 Na serveru SQL Server lze použít seskupený index a 999 neseskupených indexů na tabulku.
Jako maximální počet na stůl lze použít 1000 indexů. 1 Na serveru SQL Server lze použít seskupený index a 999 neseskupených indexů na tabulku.
1 Na serveru SQL Server lze použít seskupený index a 999 neseskupených indexů na tabulku.
36. Jaký je rozdíl mezi COMMIT a ROLLBACK?
Každý příkaz mezi BEGIN a COMMIT se stane trvalým do databáze, když je spuštěn COMMIT. Každý příkaz mezi BEGIN a ROOLBACK se vrátí do stavu, kdy byl spuštěn ROLLBACK.
37. Jaký je rozdíl mezi typy varchar a nvarchar?
Varchar a nvarchar jsou stejné, ale jediný rozdíl spočívá v tom, že nvarhcar lze použít k ukládání znaků Unicode pro více jazyků a ve srovnání s varchar také zabere více místa.
38. Jaké je použití @@ SPID?
@@ SPID vrátí ID relace aktuálního procesu uživatele.
39. Jaký je příkaz použitý k překompilaci uložené procedury za běhu?
Uloženou proceduru lze provést pomocí klíčového slova s názvem RECOMPILE.
Příklad
ExeWITH RECOMPILE
Nebo můžeme zahrnout WITHRECOMPILE do samotné uložené procedury.
40. Jak odstranit duplicitní řádky na serveru SQL Server?
Duplicitní řádky lze odstranit pomocí funkce CTE a ROW NUMER serveru SQL Server.
41. Kde jsou na serveru SQL Server uložena uživatelská jména a hesla serveru SQL Server?
Uživatelská jména a hesla jsou uložena v sys.server_principals a sys.sql_logins. Hesla se ale neukládají do normálního textu.
42. Jaký je rozdíl mezi GETDATE a SYSDATETIME?
Oba jsou stejné, ale GETDATE může dát čas do milisekund a SYSDATETIME může dát přesnost do nanosekund. ČAS SYSDATE je přesnější než GETDATE.
43. Jak lze kopírovat data z jedné tabulky do druhé?
VLOŽTE DO VÝBĚRU
Tento příkaz se používá k vložení dat do již vytvořené tabulky.
VYBERTE DO
Tento příkaz se používá k vytvoření nové tabulky a její strukturu a data lze zkopírovat z existující tabulky.
44. Co je TABLESAMPLE?
TABLESAMPLE se používá k náhodnému extrakci vzorku řádků, které jsou všechny potřebné pro aplikaci. Ukázkové řádky jsou založeny na procentech řádků.
45. Který příkaz se používá pro uživatelem definované chybové zprávy?
RAISEERROR je příkaz používaný ke generování a zahájení zpracování chyb pro danou relaci. Tyto uživatelem definované zprávy jsou uloženy v tabulce sys.messages.
46. Co znamená XML datový typ?
Datový typ XML se používá k ukládání dokumentů XML v databázi serveru SQL. Sloupce a proměnné se vytvářejí a ukládají instance XML do databáze.
47. Co je to CDC?
CDC je zkráceno jako Change Data Capture, které se používá k zachycení dat, která byla nedávno změněna. Tato funkce je k dispozici na serveru SQL Server 2008.
48. Co je to SQL injection?
Injekce SQL je útok uživatelů se zlými úmysly, při kterém lze škodlivý kód vložit do řetězců, které lze předat instanci serveru SQL k analýze a provedení. Při provádění všech syntakticky platných dotazů, které přijímá, je třeba u všech příkazů zkontrolovat zranitelnost.
I s parametry mohou manipulovat zkušení a zkušení útočníci.
49. Jaké jsou metody používané k ochraně před útokem SQL injection?
Následují metody používané k ochraně před útokem SQL injection:
- Použijte parametry pro uložené procedury
- Filtrování vstupních parametrů
- Použijte kolekci parametrů s Dynamic SQL
- V klauzuli like uživatel unikne znakům
50. Co je filtrovaný index?
Filtrovaný index se používá k filtrování určité části řádků v tabulce, aby se zlepšil výkon dotazu, údržba indexu a snížily náklady na úložiště indexu. Když je index vytvořen s klauzulí WHERE, pak se nazývá Filtrovaný index