Давно уже Был на собеседовании, на позицию администратор баз данных. Рассказал свой опыт, знания. Сотрудник отдела, наверное начальник, задавал разные каверзные вопросы, пытался обличить меня и вывести на чистую воду. ))))
Пообщались я поотвечал. Специалист мне экзаменовавший выглядел солидно, производи впечатление серьезного человека.
На определенный момент беседы мне прилетел от данного сотрудника вопрос на знания языка MS SQL. Точно не скажу, примерно
- "Расскажите о основных направлениях языка SQL", я немножко замялся, специалист дал наводящий данные,
- "Такие аббревиатуры как DDL, DML вам говорят о чем нибудь". Сразу повсплывало в голове ответы.
Я ответил примерно так
- "По видам манипуляций с данными язык SQL делится на 4 направления, DDL. DML и еще пара. К примеру DML - Data Manipulation Language, позволяет манипулировать данными в него входит к примеру команда select, или DDL
- Data Definition Language это группа команд, которые используются для создания и изменения структуры объектов базы данных к примеру команды CREATE, ALTER, DROP." признался, все четыре названия не помню, если они мне для работы понадобятся, я знаю где почитать. А так предоставление прав поиск удаление изменение я всем командами умею пользоваться, теория я ее знаю но в голове не держу, как лишнюю информацию.
На, что мой интервьюер мне дал четкий ответ, до сих пор помню.
-"Как же вы работаете администратором баз данных, это же основа основ, вы должны знать описание на зубок, ночью спроси и сразу кратко рассказать, вы не стоите тех денег которые требуете" там дальше пошли разговоры про зп меньшую и так далее, Что даже не знают брать меня или нет, нусли только на ученика, чтобы подтянуть, ну типа я должен зацепиться за возможность пойти на меньшую должность и подтянуть свои знания, а уже через время посмотрят на мои знания и может быть добавят ЗП.
Долго не думая откланялся, завершил собеседование, пошёл, на свою работу, собеседование не обязывает увольняться и бежать на меньшую ЗП.
Решил для себя повторить все четыре направления языка SQL.
Если кому интересно повторите вместе со мной.
Язык SQL Structured Query Language — «язык структурированных запросов.
если сказать проще язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных. Язык для манипуляции с данными в базе данных. Язык SQL структурируют по четырем направлениям манипуляции данными. На рисунке 1 предствлена схема структурирования направлений манипуляции данными.
Описания видов запросов:
- DDL (data definition language) — определяет данные и позволяет настраивать базу данных. Примеры: CREATE, DROP, RENAME, ALTER.
- DML (data manipulation language) — управляет данными в таблицах. Примеры: SELECT, UPDATE, DELETE, INSERT.
- DCL (data control language) — выдаёт или отзывает права доступа для пользователей. Примеры: GRANT, REVOKE, DENY.
- TCL (transaction control language) — управляет транзакциями. Примеры: COMMIT, ROLLBACK, BEGIN.
В общем вопрос не тяжелый, просто надо запомнить термины и направления.
Честно сказать, изучил вопрос ранее, но не придавал вопросу каких то сакральных значений. Знаю, что есть такие направления, но их названия и какое направления за, что отвечает я не запоминал, для общего развития читал. Основные виды запросов я помню, если какие то применяю не часто у меня под рукой учебник и интернет где я могу освежить в памяти по конструкции запроса, того или иного направления. Но вот уже несколько собеседований проходил спрашивают этот вопрос. Надеюсь кому то было интересен мой опыт собеседования, поиск ответа. Если кто-то может проясните мне в комментариях, чем так сакрален этот вопрос и почему я должен знать ответ на него даже ночью в полу сне. Если кто-то в комментариях поделится вопросами из собеседования, могу попробовать их осветить из своих знаний, может тырнет пошерстю.