top 50 database interview questions
Най-често задавани въпроси и отговори за интервю за база данни:
Тази статия ще обхване списък на всички най-важни и често задавани въпроси и отговори за интервю за „База данни”, които ще ви помогнат да пропуснете всяко интервю.
Организационните умения, силната способност за решаване на проблеми, вниманието към детайлите и високото ниво на точност са някои от основните качества, които човек трябва да притежава, за да бъде в 'База данни' поле.
Въпреки че трябва да сте в течение с най-новите тенденции в бранша, основите ви също трябва да са силни от друга страна. За да започнете кариерата си в базата данни, първото и най-важно нещо, което трябва да имате, е познаването на СУБД (система за управление на база данни) и SQL (език за структурирани заявки).
Най-популярни въпроси и отговори за интервюта в база данни
По-долу е даден списък с най-популярните въпроси и отговори за интервю за база данни за справка.
В # 1) Какво разбирате под „База данни“?
Отговор: Базата данни е организирано събиране на свързани данни, където данните се съхраняват и организират, за да обслужват някаква конкретна цел.
Например , Библиотекар поддържа база данни с цялата информация, свързана с книгите, които са на разположение в библиотеката.
В # 2) Определете СУБД.
Отговор: СУБД означава система за управление на база данни. Това е колекция от приложни програми, които позволяват на потребителя да организира, възстановява и извлича информация за данни ефективно и възможно най-ефективно.
Някои от популярните СУБД са MySql, Oracle, Sybase и др.
В # 3) Определете RDBMS.
Отговор: Релационната система за управление на база данни (RDBMS) се основава на релационен модел на данни, който се съхранява в бази данни в отделни таблици и те са свързани с използването на обща колона. Данните могат да бъдат лесно достъпни от релационната база данни, използвайки Структуриран език за заявки (SQL).
В # 4) Избройте предимствата на СУБД.
Отговор: Предимствата на СУБД включват:
- Данните се съхраняват по структуриран начин и по този начин се контролира излишъкът.
- Проверява въведените данни и предоставя ограничения за неоторизиран достъп до базата данни.
- Осигурява архивиране и възстановяване на данните, когато е необходимо.
- Той осигурява множество потребителски интерфейси.
В # 5) Какво разбирате под излишък на данни?
Отговор: Дублирането на данни в базата данни е известно като излишък на данни. В резултат на излишък на данни, дублирани данни присъстват на множество места, поради което води до загуба на място за съхранение и целостта на базата данни е унищожена.
В # 6) Какви са различните видове връзки в базата данни? Определете ги.
Отговор: В базата данни има 3 типа взаимоотношения:
- Едно към едно: Една таблица има връзка с друга таблица с подобен вид колона. Всеки първичен ключ се отнася само до един или никакъв запис в свързаната таблица.
- Един към много: Една таблица има връзка с друга таблица, която има първични и външни ключови връзки. Таблицата на първичния ключ съдържа само един запис, който се отнася до нито един, един или много записи в свързаната таблица.
- Много към много: Всеки запис в двете таблици може да се отнася до многобройни записи в друга таблица.
В # 7) Обяснете нормализирането и денормализацията.
Отговор:
Нормализация е процесът на премахване на излишни данни от базата данни чрез разделяне на таблицата по точно определен начин, за да се запази целостта на данните. Този процес спестява голяма част от пространството за съхранение.
Денормализация е процесът на добавяне на излишни данни в таблицата, за да се ускорят сложните заявки и по този начин да се постигне по-добра производителност.
В # 8) Кои са различните видове нормализация?
Отговор: Различните видове нормализация са:
- Първа нормална форма (1NF): Казва се, че една връзка е в 1NF само когато всички обекти на таблицата съдържат уникални или атомни стойности.
- Втора нормална форма (2NF): Казва се, че една връзка е в 2NF само ако е в 1NF и всички неключови атрибути на таблицата са изцяло зависими от първичния ключ.
- Трета нормална форма (3NF): Казва се, че една връзка е в 3NF само ако е в 2NF и всеки неключов атрибут на таблицата не е преходно зависим от първичния ключ.
В # 9) Какво е BCNF?
Отговор: BCNF е нормалната форма на кода на Бойс. Това е по-високата версия на 3Nf, която няма множество припокриващи се ключови ключове.
В # 10) Какво е SQL?
Отговор: Структуриран език за заявки, SQL е стандартен език за програмиране ANSI (American National Standard Institute), който е проектиран специално за съхраняване и управление на данните в системата за управление на релационна база данни (RDBMS), използвайки всички видове операции с данни.
В # 11) Колко SQL израза се използват? Определете ги.
Отговор: SQL операторите са основно разделени на три категории, DDL, DML и DCL.
Те могат да бъдат определени като:
- Език за дефиниране на данни (DDL) командите се използват за дефиниране на структурата, която съдържа данните. Тези команди са автоматично ангажирани, т.е.промените, направени от DDL командите в базата данни, се запазват за постоянно.
- Език за управление на данни (DML) командите се използват за манипулиране на данните на базата данни. Тези команди не са автоматично ангажирани и могат да бъдат върнати обратно.
- Език за контрол на данните (DCL) командите се използват за контрол на видимостта на данните в базата данни, като отнемане на разрешение за достъп за използване на данни в базата данни.
В # 12) Избройте някои команди от DDL, DML и DCL.
Отговор: Команди на езика за дефиниране на данни (DDL):
- CREATE, за да създадете нова таблица или база данни.
- ALTER за промяна.
- TRUNCATE за изтриване на данни от таблицата.
- DROP, за да пуснете маса.
- RENAME за преименуване на таблица.
Команди на езика за управление на данни (DML):
- INSERT, за да вмъкнете нов ред.
- АКТУАЛИЗИРАНЕ, за да актуализирате съществуващ ред.
- ИЗТРИВАНЕ за изтриване на ред.
- MERGE за обединяване на два реда или две таблици.
Команди на езика за управление на данни (DCL):
- АНГАЖИРАНЕ за постоянно запазване.
- ROLLBACK, за да отмените промяната.
- SAVEPOINT за временно запазване.
В # 13) Определете DML компилатора.
Отговор: DML компилаторът превежда DML изрази на език за заявки в инструкция от ниско ниво и генерираната инструкция може да бъде разбрана от Query Evaluation Engine.
В # 14) Какво е DDL интерпретатор?
Отговор: DDL Interpreter интерпретира DDL изразите и записва генерираните отчети в таблицата, съдържаща метаданни.
Въпрос # 15) Избройте предимствата на SQL.
Отговор: Предимствата на SQL са:
- Простите SQL заявки могат да се използват за извличане на голямо количество данни от базата данни много бързо и ефективно.
- SQL е лесен за учене и почти всяка СУБД поддържа SQL.
- По-лесно е да управлявате базата данни с помощта на SQL, тъй като не се изисква голямо количество кодиране.
Въпрос # 16) Обяснете термините „Запис“, „Поле“ и „Таблица“ по отношение на базата данни.
Отговор:
Запис: Записът е колекция от стойности или полета на определен обект. Например, Служител, сметка за заплата и др.
Поле: Полето се отнася до област в записа, която е запазена за конкретни данни. Например, ИД на служител.
Таблица: Таблицата е колекцията от записи от специфични типове. Например, таблицата Служител е колекция от записи, свързани с всички служители.
В # 17) Какво разбирате под Независимост на данните? Кои са двата му вида?
Отговор: Независимостта на данните се отнася до възможността за модифициране на дефиницията на схемата в едно ниво по такъв начин, че да не засяга дефиницията на схемата в следващото по-високо ниво.
2-те типа Независимост на данните са:
как да използвам регулярния израз в c ++
- Независимост на физическите данни : Той променя схемата на физическо ниво, без да засяга схемата на концептуално ниво.
- Независимост на логическите данни: Той модифицира схемата на концептуално ниво, без да влияе или да причинява промени в схемата на ниво изглед.
Въпрос # 18) Определете връзката между „Преглед“ и „Независимост на данните“.
Отговор: Изгледът е виртуална таблица, която не разполага със собствени данни, а данните се дефинират от една или повече базови базови таблици.
Изгледите отчитат независимостта на логическите данни, тъй като растежът и преструктурирането на базовите таблици не се отразяват в изгледите.
В # 19) Какви са предимствата и недостатъците на изгледите в базата данни?
Отговор: Предимства на изгледите:
- Тъй като няма физическо местоположение, където данните в изгледа да се съхраняват, то генерира изход без загуба на ресурси.
- Достъпът до данни е ограничен, тъй като не позволява команди като вмъкване, актуализиране и изтриване.
Недостатъци на изгледите:
- Изгледът става без значение, ако пуснем таблица, свързана с този изглед.
- Много място в паметта е заето, когато изгледът е създаден за големи таблици.
В # 20) Какво разбирате под функционална зависимост?
Отговор: Казва се, че една връзка е във функционална зависимост, когато един атрибут дефинира уникално друг атрибут.
Например, R е връзка, X и Y са два атрибута. Т1 и Т2 са две кортежи. Тогава,
T1 (X) = T2 (X) и T1 (Y) = T2 (Y)
Означава, че стойността на компонент X еднозначно определя стойността на компонент Y.
Също така, X-> Y означава, че Y е функционално зависим от X.
В # 21) Кога се казва, че функционалната зависимост е напълно функционалната зависимост?
Отговор: За да изпълни критериите за напълно функционална зависимост, връзката трябва да отговаря на изискването за функционална зависимост.
За функционална зависимост „A“ и „B“ се казва, че е напълно функционално зависима, когато премахването на който и да е атрибут, например „X“ от „A“, означава, че зависимостта вече не се поддържа.
В # 22) Какво разбирате от модела E-R?
Отговор: E-R моделът е модел Entity-Relationship, който дефинира концептуалния изглед на базата данни.
Моделът E-R основно показва реалните субекти и тяхната асоциация / отношения. Обектите тук представляват набора от атрибути в базата данни.
Q # 23) Определете обект, тип обект и набор от обекти.
Отговор:
Субект може да бъде всичко, било то място, клас или обект, които имат независимо съществуване в реалния свят.
Тип на обекта представлява набор от обекти, които имат подобни атрибути.
Набор от обекти в базата данни представлява колекция от обекти, имащи определен тип обект.
В # 24) Определете набор от слаби обекти.
Отговор: Набор за слаб обект е този, чийто първичен ключ включва неговия частичен ключ, както и първичния ключ на неговия обект майка. Това е така, защото наборът обекти може да няма достатъчно атрибути, за да формира първичен ключ.
Въпрос # 25) Обяснете термините „Атрибут“ и „Връзки“
Отговор:
Атрибут се описва като свойства или характеристики на даден обект. Например , Идентификационен номер на служител, име на служител, възраст и др., Могат да бъдат атрибути на обекта Служител.
Връзка е двуизмерна таблица, съдържаща брой редове и колони, където всеки ред представлява запис на релацията. Тук редовете са известни също като „Tuples“, а колоните са известни като „Attributes“.
В # 26) Какво представляват VDL и SDL?
Отговор: VDL е View Definition Language, който представлява потребителски изгледи и тяхното картографиране към концептуалната схема.
SDL е Storage Definition Language, който определя съпоставянето между две схеми.
В # 27) Определете курсора и неговите типове.
Отговор: Курсорът е временна работна област, която съхранява данните, както и набора от резултати, възникнал след манипулиране на извлечените данни. Курсорът може да съдържа само един ред наведнъж.
2-те вида курсор са:
- Неявни курсори се декларират автоматично, когато се изпълняват DML изрази като INSERT, UPDATE, DELETE.
- Изрични курсори трябва да бъдат декларирани, когато се изпълняват оператори SELECT, които връщат повече от един ред.
В # 28) Какво представлява транзакцията с базата данни?
Отговор: Последователност на извършената операция, която променя постоянното състояние на базата данни на друга, е известна като транзакция на базата данни. След завършване на транзакцията или успешното завършване се отразява в системата, или транзакцията се проваля и не се отразява промяна.
В # 29) Определете заключването на базата данни и неговите типове.
Отговор: Заключването на база данни всъщност означава транзакцията за текущото състояние на елемента от данни, т.е. дали тези данни се използват от други транзакции или не в момента.
Има два типа заключване на база данни: Споделено заключване и Изключително заключване.
В # 30) Какво представлява складирането на данни?
Отговор: Съхранението, както и достъпът до данни, които се извличат от транзакциите и други източници, от централно място, за да се извърши анализът, се нарича Складиране на данни.
В # 31) Какво разбирате от присъединяването?
Отговор: Присъединяването е процес на извличане на връзката между различни таблици чрез комбиниране на колони от една или повече таблици, имащи общи стойности във всяка. Когато масата се присъедини към себе си, тя е известна като Self Join.
Въпрос # 32) Какво разбирате от лов на индекси?
Отговор: Ловът на индекси е процесът на ускоряване на събирането на индекси, който помага за подобряване на производителността на заявката, както и на скоростта на базата данни.
Въпрос # 33) Как да подобрим ефективността на заявките, използвайки търсене на индекс?
Отговор: Помощ за лов на индекси за подобряване на изпълнението на заявките от:
- Използване на оптимизатор на заявки за координиране на заявки с работното натоварване.
- Наблюдение на ефективността и ефекта от разпределението на индексите и заявките.
Въпрос # 34) Разграничаване между индекса „Клъстер“ и „Неклъстер“.
Отговор: Клъстерираният индекс променя таблицата и пренарежда начина, по който записите се съхраняват в таблицата. Извличането на данни се извършва по-бързо с помощта на клъстерирания индекс.
Некластеризираният индекс променя записите, които се съхраняват в таблицата, но създава съвсем различен обект в таблицата.
В # 35) Какви са недостатъците на една заявка?
Отговор: Недостатъците на заявката са:
- Индексите не присъстват.
- Съхранените процедури са прекалено компилирани.
- Трудност при взаимодействието.
В # 36) Какво разбирате под фрагментация?
Отговор: Фрагментацията е функция, която контролира логическите единици данни, известни също като фрагменти, които се съхраняват на различни сайтове на разпределена система от бази данни.
В # 37) Определете типовете присъединяване.
Отговор: По-долу са дадени типовете Join, които са обяснени по отношение на таблиците като Пример.
таблица на служителите:
таблица на служител_информация:
а) Вътрешно ПРИСЪЕДИНЯВАНЕ: Inner JOIN е известен също като просто JOIN Тази SQL заявка връща резултати от двете таблици с обща стойност в редове.
SQL заявка:
SELECT * from employee, employee_info WHERE employee.EmpID = employee_info.EmpID ;
Резултат:
б) Естествено ПРИСЪЕДИНЯВАНЕ: Това е тип Вътрешно ПРИСЪЕДИНЯВАНЕ, което връща резултати от двете таблици, имащи еднакви стойности на данните в колоните на двете таблици, които трябва да се присъединят.
SQL заявка:
SELECT * from employee NATURAL JOIN employee_info;
Резултат:
в) КРЪСТНО ПРИСЪЕДИНЯВАНЕ: Cross JOIN връща резултата като всички записи, където всеки ред от първата таблица се комбинира с всеки ред от втората таблица.
SQL заявка:
SELECT * from employee CROSS JOIN employee_info;
Резултат:
Нека направим някои модификации в горните таблици, за да разберем Right JOIN, Left JOIN и Full JOIN.
таблица на служителите:
таблица на служител_информация:
а) дясно ПРИСЪЕДИНЯВАНЕ: Right JOIN е известен също като Right Outer JOIN. Това връща всички редове в резултат от дясната таблица, дори ако условието JOIN не съответства на никакви записи в лявата таблица.
SQL заявка:
SELECT * from employee RIGHT OUTER JOIN employee_info on (employee.EmpID = employee_info.EmpID);
Резултат:
б) НАЛЯВО ПРИСЪЕДИНЯВАНЕ: Left JOIN е известен също като Left Outer JOIN. Това връща всички редове в резултат на лявата таблица, дори ако условието JOIN не съответства на никакви записи в дясната таблица. Това е точно обратното на Right JOIN.
SQL заявка:
SELECT * from employee LEFT OUTER JOIN employee_info on (employee.EmpID = employee_info.EmpID);
Резултат:
в) Външно / пълно присъединяване: Резултати от пълно ПРИСЪЕДИНЯВАНЕ при комбиниране на резултата както от лявото ПРИСЪЕДИНЯВАНЕ, така и отдясно.
SQL заявка:
SELECT * from employee FULL OUTER JOIN employee_info on (employee.EmpID = employee_info.EmpID);
Резултат:
В # 38) Какво разбирате под „атомност“ и „агрегиране“?
Отговор: Атомност е условието, при което се извършват или всички действия по транзакцията, или никакви. Това означава, че когато има непълна транзакция, самата система за управление на базата данни ще отмени ефектите, извършени от непълната транзакция.
Агрегиране е концепцията за изразяване на връзката с колекцията от обекти и техните взаимоотношения.
Q # 39) Определете Phantom deadlock.
Отговор: Откриването на фантомно блокиране е състоянието, при което блокирането всъщност не съществува, но поради забавяне в разпространението на локална информация алгоритмите за откриване на блокиране идентифицират блокировките.
В # 40) Определете контролна точка.
Отговор: Checkpoint декларира точка, преди която всички регистрационни файлове се съхраняват постоянно в диска за съхранение и е несъвместимо състояние. В случай на сривове се запазва количеството работа и времето, тъй като системата може да се рестартира от контролната точка.
В # 41) Какво представлява разделянето на базата данни?
Отговор: Разделянето на база данни е процес на разделяне на таблици, индексира на по-малки парчета, за да се управляват данните и достъп до тях на по-фино ниво.
Този процес на разделяне намалява разходите за съхранение на голямо количество данни, както и подобрява производителността и управляемостта.
В # 42) Обяснете значението на разделянето на базата данни.
Отговор: Важността на разделянето на базата данни е:
- Подобрява производителността на заявките и управляемостта.
- Опростява общи административни задачи.
- Действа като ключов инструмент за изграждане на системи с изключително високи изисквания за наличност.
- Позволява достъп до голяма част от един дял.
В # 43) Обяснете речника на данните.
Отговор: Речникът на данни е набор от информация, описваща съдържанието и структурата на таблиците и обектите на базата данни. Работата на информацията, съхранявана в речника на данните, е да контролира, манипулира и осъществява достъп до връзката между елементите на базата данни.
Q # 44) Обяснете първичния ключ и съставния ключ.
Отговор: Първичен ключ е тази колона на таблицата, чиито данни за всеки ред са уникално идентифицирани. Всеки ред в таблицата трябва да има първичен ключ и няма два реда да имат един и същ първичен ключ. Стойността на първичния ключ никога не може да бъде нула, нито да бъде модифицирана или актуализирана.
Композитен ключ е форма на кандидат-ключа, където набор от колони ще идентифицира уникално всеки ред в таблицата.
В # 45) Какво разбирате под уникалния ключ?
Отговор: Уникалният ключ е същото като първичния ключ, чиито данни за всеки ред са уникално идентифицирани с разлика в нулевата стойност, т.е.Уникалният ключ позволява една стойност като NULL стойност.
В # 46) Какво разбирате от тригери на база данни?
Отговор: Набор от команди, които се изпълняват автоматично, когато събитие като Преди вмъкване, След вмъкване, При актуализация, При изтриване на ред в таблица се нарича тригер на база данни.
Q # 47) Определете съхранените процедури.
Отговор: Съхранената процедура е колекция от предварително компилирани SQL заявки, която при изпълнение обозначава програма, която приема вход, процес и дава изхода.
В # 48) Какво разбирате от B-Trees?
Отговор: B-Tree представлява структурата на данните под формата на дърво за външна памет, която чете и записва големи блокове данни. Често се използва в бази данни и файлови системи, където всички вмъквания, изтривания, сортиране и т.н., се извършват в логаритмично време.
въпрос и отговори за интервю за техническа поддръжка
Q # 49) Назовете различните модели данни, които са достъпни за системите за бази данни.
Отговор: Различните модели данни са:
- Релационен модел
- Мрежов модел
- Йерархичен модел
Въпрос # 50) Разграничаване между командите ‘DELETE’, ‘TRUNCATE’ и ‘DROP’.
Отговор: След изпълнението на 'ИЗТРИЙ' операция, могат да се извършват оператори COMMIT и ROLLBACK за извличане на изгубените данни.
След изпълнението на „ПРЕКРАТЕТЕ“ операция, COMMIT и ROLLBACK изрази не могат да бъдат извършени за извличане на загубени данни.
'ИЗПУСКАЙТЕ' команда се използва за пускане на таблицата или ключа като първичен ключ / външен ключ.
Q # 51) Въз основа на дадената таблица решете следните заявки.
Маса на служителите
да се) Напишете командата SELECT, за да покажете подробностите за служителя с empid като 1004.
SQL заявка:
SELECT empId, empName, Age, Address from Employee WHERE empId = 1004;
Резултат:
б) Напишете командата SELECT, за да покажете всички записи на таблицата Служители.
SQL заявка:
SELECT * from Employee;
Резултат:
° С) Напишете командата SELECT, за да покажете всички записи на служителя, чието име започва със знака ‘R’.
SQL заявка:
SELECT * from Employee WHERE empName LIKE ‘R%’;
Резултат:
д) Напишете команда SELECT, за да покажете идентификатор, възраст и име на служителите с тяхната възраст както във възходящ, така и в низходящ ред.
SQL заявка:
SELECT empId, empName, Age from Employee ORDER BY Age;
Резултат:
SELECT empId, empName, Age from Employee ORDER BY Age Desc;
Резултат:
е) Напишете командата SELECT, за да изчислите общия размер на заплатата на всеки служител от таблицата по-долу Emp.
Emp таблица:
SQL заявка:
SELECT empName, SUM(Salary) from Emp GROUP BY empName;
Резултат:
Заключение
Това са набор от въпроси и отговори за интервю за база данни, които най-често се задават в интервюто.
В интервютата се разпитват основно основите на всеки предмет. Добре известен факт за всички е, че ако основите ви са ясни, можете да достигнете най-високите височини.
Възможно е обаче да има и по-сложни въпроси. Просто бъдете уверени и се изправете пред всеки въпрос с яснота в познанията си по предмета.
Допълнителна информация:
- Топ въпроси за интервю за SQL
- Водещи въпроси за интервю за тестване на база данни
- Водещи въпроси за интервю за моделиране на данни
- Водещи въпроси за интервю за SQL Server
Препоръчително четене
- Топ 32 най-добри въпроса и отговори за интервю за сцената на данни
- 31 Топ бази данни Тестване на интервюта Въпроси и отговори
- 40+ Най-добри инструменти за тестване на бази данни - Популярни решения за тестване на данни
- Пълно ръководство за тестване на база данни (защо, какво и как да тестваме данни)
- 30-те най-популярни софтуера за управление на бази данни: пълен списък
- Топ 50+ въпроси и отговори за интервюта за бази данни