Подсветка интерфейса в зависимости от БД
Всем привет!
Пост будет полезен тем, кто использует IDE PL/SQL Developer.
100% вы встречались с ситуацией, когда выполняли скрипт не на той БД, не в той среде и т.п. Для предупреждения таких фейлов, многие IDE позволяют раскрашивать интерфейс в зависимости от коннекта к той или иной БД.
Не исключение мой любимый инструмент - PL/SQL Developer. Но не многие DBD/DBA знают про эту возможность.
Если зайти в меню Preferences -> Appearance, то в разделе “Connection Indicators” можно задать правила для подкрашивания интерфейса.
Шаблоны могут быть такими:
▫️ *@*dev
▫️ myuser@*
▫️ myser@some_proddb и т.д.
Для каждого шаблона задается цвет. Обычно делают: красный для Prod-сред, желтый для тестовых, зеленый для dev.
На скрине я подключен к БД содержащей в строке подключения слово dev. Соответственно, индикаторы подсвечены зеленым.
В PL/SQL Developer’e очень много разных фишек. Могу поделиться, если интересно 😉
Всем хорошей рабочей недели 👍
#ide
Всем привет!
Пост будет полезен тем, кто использует IDE PL/SQL Developer.
100% вы встречались с ситуацией, когда выполняли скрипт не на той БД, не в той среде и т.п. Для предупреждения таких фейлов, многие IDE позволяют раскрашивать интерфейс в зависимости от коннекта к той или иной БД.
Не исключение мой любимый инструмент - PL/SQL Developer. Но не многие DBD/DBA знают про эту возможность.
Если зайти в меню Preferences -> Appearance, то в разделе “Connection Indicators” можно задать правила для подкрашивания интерфейса.
Шаблоны могут быть такими:
▫️ *@*dev
▫️ myuser@*
▫️ myser@some_proddb и т.д.
Для каждого шаблона задается цвет. Обычно делают: красный для Prod-сред, желтый для тестовых, зеленый для dev.
На скрине я подключен к БД содержащей в строке подключения слово dev. Соответственно, индикаторы подсвечены зеленым.
В PL/SQL Developer’e очень много разных фишек. Могу поделиться, если интересно 😉
Всем хорошей рабочей недели 👍
#ide
Recall Statement - Перевызов запроса
Всем привет!
Еще один пост для тех кто использует IDE PL/SQL Developer.
Есть возможность открыть список выполнявшихся команд в IDE. Экономит время и нервы. Нет необходимости писать запрос заново, можно взять уже когда-то написанный. Я достаточно часто использую. Как это выглядит см скрин ⬆️
Открыть можно через комбинацию - CNTRL+E или меню Edit -> Recall Statement.
Появится окно с выполненными запросами. Можно сортировать по дате, по тексту, по коннекту. Если не ошибаюсь, в 14й версии PL/SQL Developer добавили возможность фильтрации, раньше этого очень не хватало.
Количество сохраняемых запросов можно установить в настройках: Configure -> Preferences -> Tools -> Recall Statement.
По-моему, в dbForge и в TOAD тоже есть такие возможности.
DataGrip? SQL Developer? DBeaver?
Можете написать в комментах про свою любимую IDE.
Удобный настроенный инструмент облегчает и ускоряет любую работу 😉
#ide
Всем привет!
Еще один пост для тех кто использует IDE PL/SQL Developer.
Есть возможность открыть список выполнявшихся команд в IDE. Экономит время и нервы. Нет необходимости писать запрос заново, можно взять уже когда-то написанный. Я достаточно часто использую. Как это выглядит см скрин ⬆️
Открыть можно через комбинацию - CNTRL+E или меню Edit -> Recall Statement.
Появится окно с выполненными запросами. Можно сортировать по дате, по тексту, по коннекту. Если не ошибаюсь, в 14й версии PL/SQL Developer добавили возможность фильтрации, раньше этого очень не хватало.
Количество сохраняемых запросов можно установить в настройках: Configure -> Preferences -> Tools -> Recall Statement.
По-моему, в dbForge и в TOAD тоже есть такие возможности.
DataGrip? SQL Developer? DBeaver?
Можете написать в комментах про свою любимую IDE.
Удобный настроенный инструмент облегчает и ускоряет любую работу 😉
#ide
Как готовят Oracle в Спортмастере
Друзья, всем привет!
В рабочих чатиках уже давно мелькало это интервью. Вполне вероятно, что вы его уже видели, но у меня все как-то не доходили руки. Наконец-то, на этих выходных удалось урвать почти час свободного времени (на скорости x1.25) на просмотр.
Было интересно послушать, чем живет разработка в “Спортмастере”.
Моё мнение, вполне себе приятное интересное интервью.
Коллеги используют (тезисно):
▫️GitLab для поставки инкремента;
▫️EBR для наката программных объектов без остановки;
▫️Crucible для code-review;
▫️SonarQube для автоматической проверки кода;
▫️Pluggable Database для создания окружения;
▫️Unit-тестирование (utPL/SQL) и др.
Отличный джентльменский набор. Такое не в каждой компании увидишь. К слову сказать, в Qiwi, где я сейчас имею счастье работать, большая часть из этого также используется. Привет коллегам 😉
Я впервые публикую видео не со своего канала. Возможно, стоит это делать чаще, с интересными материалами.
Приятного просмотра!
Как готовят Oracle в Спортмастере / Максим Пермяков
#видео
Друзья, всем привет!
В рабочих чатиках уже давно мелькало это интервью. Вполне вероятно, что вы его уже видели, но у меня все как-то не доходили руки. Наконец-то, на этих выходных удалось урвать почти час свободного времени (на скорости x1.25) на просмотр.
Было интересно послушать, чем живет разработка в “Спортмастере”.
Моё мнение, вполне себе приятное интересное интервью.
Коллеги используют (тезисно):
▫️GitLab для поставки инкремента;
▫️EBR для наката программных объектов без остановки;
▫️Crucible для code-review;
▫️SonarQube для автоматической проверки кода;
▫️Pluggable Database для создания окружения;
▫️Unit-тестирование (utPL/SQL) и др.
Отличный джентльменский набор. Такое не в каждой компании увидишь. К слову сказать, в Qiwi, где я сейчас имею счастье работать, большая часть из этого также используется. Привет коллегам 😉
Я впервые публикую видео не со своего канала. Возможно, стоит это делать чаще, с интересными материалами.
Приятного просмотра!
Как готовят Oracle в Спортмастере / Максим Пермяков
#видео
YouTube
Разработка БАЗ ДАННЫХ! / Как готовят Oracle в Спортмастере / Максим Пермяков
Из выпуска вы узнаете, как программисты Спортмастера привносят культуру в процесс разработки баз данных. Гость выпуска директор департаментов разработки и системного анализа в Sportmaster Lab - Максим Пермяков.
Тестирование баз данных, CI и CD, кодовые…
Тестирование баз данных, CI и CD, кодовые…
❤1👍1
Задача
Дана функция - sleep. Просто засыпание на N секунд с возможностью использования как функции в SQL и PL/SQL. Всегда возвращается “1”.
Рекомендую не повторять этот код, а подумать и выбрать ответ. И только после этого, повторить в СУБД и проверить себя.
#задача
Дана функция - sleep. Просто засыпание на N секунд с возможностью использования как функции в SQL и PL/SQL. Всегда возвращается “1”.
create or replace function sleep(p_sec number) return numberВыполняется такой запрос:
is
begin
dbms_session.sleep(p_sec); -- 18+
-- dbms_lock.sleep(p_sec); -- до 18
return 1;
end;
/
select nvl(sleep(5), sleep(10)) from dual;За сколько секунд он выполнится?
Рекомендую не повторять этот код, а подумать и выбрать ответ. И только после этого, повторить в СУБД и проверить себя.
#задача
Задача: постановка в посте вторника.
Решение:
Вспомним для чего нужна функция NVL. Если первый аргумент null, то возвращается второй аргумент.
На примере: nvl(null, 2), результатом будет “2”.
Тогда какой правильный ответ в задаче?
Первый аргумент возвращает “1” - не null. Значит запрос выполнится за 5 секунд?
К сожалению, нет. Не важно какое значение в первом аргументе (null, не null), второй аргумент будет вычисляться всегда. Это допустимо, когда это просто литерал (как в примере выше). Но если это что-то вычисляемое или получение значение из сиквенса, то мы столкнемся с сайд-эффектами. В документации, явно об этом не написано.
Возвращаясь к нашей задачи. 5 секунд будет потрачено при вычислении первого аргумента и 10 секунд для второго. Итого: 15 секунд.
Как с этим бороться? Использовать альтернативные функции. Например, COALESCE.
О ней я расскажу более подробно в следующих постах.
#решениезадачи #функции #nvl #coalesce
Решение:
Вспомним для чего нужна функция NVL. Если первый аргумент null, то возвращается второй аргумент.
На примере: nvl(null, 2), результатом будет “2”.
Тогда какой правильный ответ в задаче?
Первый аргумент возвращает “1” - не null. Значит запрос выполнится за 5 секунд?
К сожалению, нет. Не важно какое значение в первом аргументе (null, не null), второй аргумент будет вычисляться всегда. Это допустимо, когда это просто литерал (как в примере выше). Но если это что-то вычисляемое или получение значение из сиквенса, то мы столкнемся с сайд-эффектами. В документации, явно об этом не написано.
Возвращаясь к нашей задачи. 5 секунд будет потрачено при вычислении первого аргумента и 10 секунд для второго. Итого: 15 секунд.
Как с этим бороться? Использовать альтернативные функции. Например, COALESCE.
О ней я расскажу более подробно в следующих постах.
#решениезадачи #функции #nvl #coalesce
Канал с отзывами 🗣
Всем привет!
Когда-то далеким январем 2020-го, я купил курс по созданию Telegram-каналов (да, я тоже обучаюсь и тоже покупаю обучение).
В одной из глав мануала было примерно следующее: “заведите второй канал и добавляйте в него отзывы по вашим услугам, обратную связь и т.д. Он будет полезен”.
Я тогда на это подзабил, ибо все казалось туманным и, исходя из принципа “бережливого производства”, смысла этим тогда заниматься не было.
Вернемся в настоящее. Прошло почти 2️⃣ года с момента основания канала. Много чего было сделано - курс по PL/SQL, интенсив по секционированию, частные консультации. Получена обратная связь по YouTube и Telegram-каналам. А я так и не сделал канал-отзовик... 🤦🏻♂️
“Пора исправляться” подумал я и потратил воскресенье на его создание.
Можно сходить сюда и посмотреть, чего там Денис насобирал 😉
Это пока не все отзывы, но с чего-то надо начинать. Буду постепенно публиковать.
#отзывы
Всем привет!
Когда-то далеким январем 2020-го, я купил курс по созданию Telegram-каналов (да, я тоже обучаюсь и тоже покупаю обучение).
В одной из глав мануала было примерно следующее: “заведите второй канал и добавляйте в него отзывы по вашим услугам, обратную связь и т.д. Он будет полезен”.
Я тогда на это подзабил, ибо все казалось туманным и, исходя из принципа “бережливого производства”, смысла этим тогда заниматься не было.
Вернемся в настоящее. Прошло почти 2️⃣ года с момента основания канала. Много чего было сделано - курс по PL/SQL, интенсив по секционированию, частные консультации. Получена обратная связь по YouTube и Telegram-каналам. А я так и не сделал канал-отзовик... 🤦🏻♂️
“Пора исправляться” подумал я и потратил воскресенье на его создание.
Можно сходить сюда и посмотреть, чего там Денис насобирал 😉
Это пока не все отзывы, но с чего-то надо начинать. Буду постепенно публиковать.
#отзывы
Telegram
Отзывы об обучении у Кивилёва Дениса
Здесь можно посмотреть отзывы по проведенным курсам, интенсивам, индивидуальным консультациям у автора канала Oracle Developer - Кивилёва Дениса
Связь - @denis_dbd
Канал Oracle Developer - @oracle_dbd
Связь - @denis_dbd
Канал Oracle Developer - @oracle_dbd
👍5❤1
Задача
Дана функция - sleep. Просто засыпание на N секунд с возможностью использования как функции в SQL и PL/SQL. Всегда возвращается “1”.
Рекомендую не повторять этот код, а подумать и выбрать ответ. И только после этого, повторить в СУБД и проверить себя 😉
—
⚠️ Завтра будет анонс нового потока на курс “Oracle PL/SQL.Основы”. А пока, можно почитать отзывы ребят с предыдущих потоков.
#задача
Дана функция - sleep. Просто засыпание на N секунд с возможностью использования как функции в SQL и PL/SQL. Всегда возвращается “1”.
create or replace function sleep(p_sec number) return numberВыполняется такой запрос:
is
begin
dbms_session.sleep(p_sec); -- 18+
-- dbms_lock.sleep(p_sec); -- до 18
return 1;
end;
/
select coalesce(sleep(5), sleep(5), sleep(5))За сколько секунд он выполнится?
from dual;
Рекомендую не повторять этот код, а подумать и выбрать ответ. И только после этого, повторить в СУБД и проверить себя 😉
—
⚠️ Завтра будет анонс нового потока на курс “Oracle PL/SQL.Основы”. А пока, можно почитать отзывы ребят с предыдущих потоков.
#задача
Друзья, всем привет!
Рад сообщить, о старте третьего потока курса “Oracle PL/SQL.Основы”.
Он будет полезен: QA-инженерам, разработчикам, аналитикам.
Основная цель: научить вас читать чужой и писать свой PL/SQL-код, достаточный для современной разработки и закрытия рабочих задач.
🔹22 видео с теорией;
🔹24 практики = единый проект;
🔹13 онлайн встреч в Zoom с разбором вопросов;
🔹закрытый телеграм-канал;
🔹старт в январе 2022.
Практика построена таким образом, чтобы вы с нуля, шаг за шагом, создали API на PL/SQL для прототипа платежной системы. Начав с анонимных блоков вы закончите своим мини-фреймворком для Unit-тестирования. Пример.
Подробности и программа - здесь. Отзывы - здесь.
Для тех кто заинтересован, но пока не уверен, я создал промо-группу курса, в которой буду размещать подробности, отрывки с занятий, отвечать на вопросы (да вы можете их сразу задавать) и даже встретимся онлайн. Залетайте!
P.S. Студентам, успешно закончившим курс, будет бонус в виде рекомендаций при трудоустройстве в Qiwi 🐥
Рад сообщить, о старте третьего потока курса “Oracle PL/SQL.Основы”.
Он будет полезен: QA-инженерам, разработчикам, аналитикам.
Основная цель: научить вас читать чужой и писать свой PL/SQL-код, достаточный для современной разработки и закрытия рабочих задач.
🔹22 видео с теорией;
🔹24 практики = единый проект;
🔹13 онлайн встреч в Zoom с разбором вопросов;
🔹закрытый телеграм-канал;
🔹старт в январе 2022.
Практика построена таким образом, чтобы вы с нуля, шаг за шагом, создали API на PL/SQL для прототипа платежной системы. Начав с анонимных блоков вы закончите своим мини-фреймворком для Unit-тестирования. Пример.
Подробности и программа - здесь. Отзывы - здесь.
Для тех кто заинтересован, но пока не уверен, я создал промо-группу курса, в которой буду размещать подробности, отрывки с занятий, отвечать на вопросы (да вы можете их сразу задавать) и даже встретимся онлайн. Залетайте!
P.S. Студентам, успешно закончившим курс, будет бонус в виде рекомендаций при трудоустройстве в Qiwi 🐥
Задача: постановка в посте вторника.
Решение:
Функцию COALESCE я упомянул еще на прошлой недели в качестве альтернативы NVL. Однако, опрос вторника немного удивляет 😉
Основные отличия от NVL
1️⃣ Функция может принимать более двух аргументов.
2️⃣ Используется короткозамкнутое вычисление (short-circuit evaluation), т.е. аргументы вычисляются по мере надобности.
3️⃣ В coalesce все аргументы должны быть одного типа. NVL - неявно преобразует тип второго аргумента к первому. Есть особенности, см. доку ⚠️
4️⃣ Функция относится к ANSI SQL, может быть использована в других РСУБД. NVL - чисто Оракловая поделка.
5️⃣ Отличия в выполнении запросов.
Согласно п.2. правильный ответ: 5 секунд.
Функция не будет вычислять ни второй, ни третий аргументы, т.к. первый аргумент не null.
Дополнительная задачка на подумать: выполнится или нет?
select nvl(10, 'abc') from dual;
—
В новом году, можно начать изучать PL/SQL с опытным наставником. Переходите на темную сторону 😈
#решениезадачи #функции #nvl #coalesce
Решение:
Функцию COALESCE я упомянул еще на прошлой недели в качестве альтернативы NVL. Однако, опрос вторника немного удивляет 😉
Основные отличия от NVL
1️⃣ Функция может принимать более двух аргументов.
2️⃣ Используется короткозамкнутое вычисление (short-circuit evaluation), т.е. аргументы вычисляются по мере надобности.
3️⃣ В coalesce все аргументы должны быть одного типа. NVL - неявно преобразует тип второго аргумента к первому. Есть особенности, см. доку ⚠️
4️⃣ Функция относится к ANSI SQL, может быть использована в других РСУБД. NVL - чисто Оракловая поделка.
5️⃣ Отличия в выполнении запросов.
Согласно п.2. правильный ответ: 5 секунд.
Функция не будет вычислять ни второй, ни третий аргументы, т.к. первый аргумент не null.
Дополнительная задачка на подумать: выполнится или нет?
select nvl(10, 'abc') from dual;
—
В новом году, можно начать изучать PL/SQL с опытным наставником. Переходите на темную сторону 😈
#решениезадачи #функции #nvl #coalesce
👍6
Принципы построения backend-приложений с СУБД Oracle
Коллеги, всем привет!
Существует несколько принципов построения приложений с использованием БД. С разной толщиной программного слоя в БД или его отсутствия и т.д.
Хочется показать вам один из вариантов построения приложений. Рассмотрим: 3х-звенку, без ORM, с бизнес-логикой в middleware, с легким налетом технического API в БД.
Сеньёров, думаю, не удивлю, а джунам и мидлам, будет полезно послушать про разные подходы. Причем, не только разработчикам.
Можно было бы, конечно, запилить видос, но хочу попробовать что-то иное.
Это будет “живое” Online-выступление с демонстрацией, минут на 30-40 + вопросы. Формат для меня немного новый, но попробовать стоит.
Вдруг приживется, тогда можно было бы собираться раз в месяц, например, и рассказывать о какой-нибудь теме.
По времени: ~27.12 19:30-20:30.
Это будет Zoom-конфа и, возможно, трансляция в Youtube (еще не пробовал).
Голосовалочка - нужно это кому-то или нет ⬇️
Всем хороших выходных! 👍
#мини_конфа
Коллеги, всем привет!
Существует несколько принципов построения приложений с использованием БД. С разной толщиной программного слоя в БД или его отсутствия и т.д.
Хочется показать вам один из вариантов построения приложений. Рассмотрим: 3х-звенку, без ORM, с бизнес-логикой в middleware, с легким налетом технического API в БД.
Сеньёров, думаю, не удивлю, а джунам и мидлам, будет полезно послушать про разные подходы. Причем, не только разработчикам.
Можно было бы, конечно, запилить видос, но хочу попробовать что-то иное.
Это будет “живое” Online-выступление с демонстрацией, минут на 30-40 + вопросы. Формат для меня немного новый, но попробовать стоит.
Вдруг приживется, тогда можно было бы собираться раз в месяц, например, и рассказывать о какой-нибудь теме.
По времени: ~27.12 19:30-20:30.
Это будет Zoom-конфа и, возможно, трансляция в Youtube (еще не пробовал).
Голосовалочка - нужно это кому-то или нет ⬇️
Всем хороших выходных! 👍
#мини_конфа
Друзья, всем привет!
В прошлую пятницу, я анонсировал мини-лекцию.
Тема: "Принципы построения backend-приложений с СУБД Oracle"
Я расскажу о распространенных методах построения приложений в связке с СУБД.
Детально, на примере, рассмотрим: трехзвенную архитектуру, без ORM, с бизнес-логикой в Java-приложении (middleware/backend) с легким налетом технического API в БД.
Показанные принципы в лекции используются у нас в компании на некоторых проектах. Этот же принцип я использую в своем курсе "Oracle PL/SQL.Основы".
🔸 Начало: 27.12.2021 19:30(МСК)
🔸 Ссылка: https://qiwi.zoom.us/j/91654869378?pwd=MlkxY
А будет ли запись?
Записывать буду 100%. Пока не знаю, залью ли на общее обозрение.
Трансляции на youtube не будет.
Если не хотите ставить Zoom, можно воспользоваться Web-клиентом.
До встречи!
#мини_конфа
В прошлую пятницу, я анонсировал мини-лекцию.
Тема: "Принципы построения backend-приложений с СУБД Oracle"
Я расскажу о распространенных методах построения приложений в связке с СУБД.
Детально, на примере, рассмотрим: трехзвенную архитектуру, без ORM, с бизнес-логикой в Java-приложении (middleware/backend) с легким налетом технического API в БД.
Показанные принципы в лекции используются у нас в компании на некоторых проектах. Этот же принцип я использую в своем курсе "Oracle PL/SQL.Основы".
🔸 Начало: 27.12.2021 19:30(МСК)
🔸 Ссылка: https://qiwi.zoom.us/j/91654869378?pwd=MlkxY
А будет ли запись?
Записывать буду 100%. Пока не знаю, залью ли на общее обозрение.
Трансляции на youtube не будет.
Если не хотите ставить Zoom, можно воспользоваться Web-клиентом.
До встречи!
#мини_конфа
Друзья, всем привет!
Вчера прошла мини-лекция "Архитектура backend-приложений в связке с СУБД Oracle".
Было интересно. Всем кто пришел - респект 👍
По многочисленным просьбам залил видео встречи.
На мой взгляд, онлайн присутствие интересней, но если другого выхода нет... смотрите на ускорении x1.25 😉
Было бы классно получить обратную связь - зашел такой формат или нет, какие темы интересны и др.
Если формат зашел - можем как-нибудь повторить 🎓
__
Шанс принять участие в курсе "Oracle PL/SQL.Основы" схлопнется 31.12 со звуком профуканной возможности. Успевайте 🤓
#мини_конфа #архитектура
Вчера прошла мини-лекция "Архитектура backend-приложений в связке с СУБД Oracle".
Было интересно. Всем кто пришел - респект 👍
По многочисленным просьбам залил видео встречи.
На мой взгляд, онлайн присутствие интересней, но если другого выхода нет... смотрите на ускорении x1.25 😉
Было бы классно получить обратную связь - зашел такой формат или нет, какие темы интересны и др.
Если формат зашел - можем как-нибудь повторить 🎓
__
Шанс принять участие в курсе "Oracle PL/SQL.Основы" схлопнется 31.12 со звуком профуканной возможности. Успевайте 🤓
#мини_конфа #архитектура
YouTube
Архитектура backend-приложений с использованием СУБД Oracle (запись встречи 27.12.2021)
Мини-лекция о распространенных методах построения приложений в связке с РСУБД.
Детально, на примере, рассмотрим:
- трехзвенную архитектуру;
- с бизнес-логикой в Java/Kotlin-приложении на Spring (middleware/backend);
- без ORM;
- с техническим API (обертками…
Детально, на примере, рассмотрим:
- трехзвенную архитектуру;
- с бизнес-логикой в Java/Kotlin-приложении на Spring (middleware/backend);
- без ORM;
- с техническим API (обертками…
👍1
Друзья, всем привет!
Философский пост.
1️⃣ Вероятно, в детстве, а может и сейчас, вы играли в ролевые игры (RPG). В самом начале ваш персонаж голенький хиленький с уровнем развития => 0. Чем дольше вы его прокачиваете, тем лучше становится броня, навыки, умения. Квесты становятся интересней, рутина исчезает, игровая жизнь ярче.
Так и в реальной жизни. Чем большим набором hard и soft-скилов мы обладаем, чем выше наша квалификация, тем больше возможностей открывается перед нами. Например, подтянули навыки разговорного английского – открылся новый бонусный уровень «работа за рубежом».
2️⃣Работодатели готовы давать плюшки, бонусы, зарплату повыше, если вы несете пользу. Предположим вы QA-инженер. Еще вчера вы не понимали, что происходит в PL/SQL-слое, но уже через три месяца, вы начали в этом разбираться. Разве это не сигнал вашему менеджеру, что вы растете, а вместе с ростом ваше время стало стоить дороже? Конечно. А если нет? То может пора поменять компанию, где кормят лучше? И вы можете себе это позволить, ведь вы обладаете знаниями.
3️⃣ Я уже рассказывал на встрече про аналитика из одной ритейловой сети. Повторюсь. Мы начали заниматься в марте в индивидуальном режиме, потом он посетил все мои программы. Парень - трудоголик, жаден до знаний. В своем роде он уникален. Аналитик, который пишет сложные SQL-запросы и PL/SQL-код. Продвигает unit-тестирование. Знает зачем нужно секционирование. Чем отличается OLTP от DWH. Любое адекватное руководство это заметит. И его заметили. Создали под него целый отдел и существенно подняли з/п. Стоимость обучения уже отбито много раз.
4️⃣ Самое важное вложение, не в новый айфон и не в новый ТВ большего размера. На мой взгляд, здоровье и развитие – это важнее, чем все материальные побрякушки. Развиваясь, вы делаете ваше время дороже. Как ни крутите, мы все продавцы времени. Мы его постоянно меняем на деньги. Если можно менять дорого, зачем менять дешево?
5️⃣ И еще один момент. Можно самому долго копаться разбираться в теме, но когда есть ментор, процесс обучения становится на порядок проще по разным причинам.
Портал перехода на новый уровень открыт » здесь «
Завтра в 23:59 он закроется со звуком профуканной возможности 😉
Философский пост.
1️⃣ Вероятно, в детстве, а может и сейчас, вы играли в ролевые игры (RPG). В самом начале ваш персонаж голенький хиленький с уровнем развития => 0. Чем дольше вы его прокачиваете, тем лучше становится броня, навыки, умения. Квесты становятся интересней, рутина исчезает, игровая жизнь ярче.
Так и в реальной жизни. Чем большим набором hard и soft-скилов мы обладаем, чем выше наша квалификация, тем больше возможностей открывается перед нами. Например, подтянули навыки разговорного английского – открылся новый бонусный уровень «работа за рубежом».
2️⃣Работодатели готовы давать плюшки, бонусы, зарплату повыше, если вы несете пользу. Предположим вы QA-инженер. Еще вчера вы не понимали, что происходит в PL/SQL-слое, но уже через три месяца, вы начали в этом разбираться. Разве это не сигнал вашему менеджеру, что вы растете, а вместе с ростом ваше время стало стоить дороже? Конечно. А если нет? То может пора поменять компанию, где кормят лучше? И вы можете себе это позволить, ведь вы обладаете знаниями.
3️⃣ Я уже рассказывал на встрече про аналитика из одной ритейловой сети. Повторюсь. Мы начали заниматься в марте в индивидуальном режиме, потом он посетил все мои программы. Парень - трудоголик, жаден до знаний. В своем роде он уникален. Аналитик, который пишет сложные SQL-запросы и PL/SQL-код. Продвигает unit-тестирование. Знает зачем нужно секционирование. Чем отличается OLTP от DWH. Любое адекватное руководство это заметит. И его заметили. Создали под него целый отдел и существенно подняли з/п. Стоимость обучения уже отбито много раз.
4️⃣ Самое важное вложение, не в новый айфон и не в новый ТВ большего размера. На мой взгляд, здоровье и развитие – это важнее, чем все материальные побрякушки. Развиваясь, вы делаете ваше время дороже. Как ни крутите, мы все продавцы времени. Мы его постоянно меняем на деньги. Если можно менять дорого, зачем менять дешево?
5️⃣ И еще один момент. Можно самому долго копаться разбираться в теме, но когда есть ментор, процесс обучения становится на порядок проще по разным причинам.
Портал перехода на новый уровень открыт » здесь «
Завтра в 23:59 он закроется со звуком профуканной возможности 😉
Telegram
Промо курса "Oracle PL/SQL. Основы"
Промо-канал по курсу PL/SQL.Основы.
Основная информация: https://oracle-dbd.tilda.ws/plsql
Основная информация: https://oracle-dbd.tilda.ws/plsql
👍2
Коллеги, всем привет!
Это последнее сообщение 2021-го. Немного итогов. С точки зрения канала, это был продуктивный год:
🔹написано ~200 постов;
🔹было запущено две обучающих программы;
🔹+800 коллег, интересующихся темой Oracle;
🔹опробованы разные форматы и многое другое.
Что-то получилось, что-то не очень. Это нормально. Я точно так же учусь вместе с вами.
Незаметно для меня количество подписчиков выросло до 2022 (символично).
Последние ~300 человек добавились без какого-либо платного продвижения. Видимо, сарафанное радио и органический трафик делают своё дело.
Я рад, что кому-то это надо. Спасибо вам за поддержку. Вы крутые 😉👍
Планов на будущий год громадьё, посмотрим, что получится сделать.
От себя хочу пожелать - здоровья, счастья и успехов во всех делах. Берегите себя и своих близких 🎄
С наступающим 2️⃣0️⃣2️⃣2️⃣ годом!
Создатель канала Oracle Developer, Кивилёв Денис
Это последнее сообщение 2021-го. Немного итогов. С точки зрения канала, это был продуктивный год:
🔹написано ~200 постов;
🔹было запущено две обучающих программы;
🔹+800 коллег, интересующихся темой Oracle;
🔹опробованы разные форматы и многое другое.
Что-то получилось, что-то не очень. Это нормально. Я точно так же учусь вместе с вами.
Незаметно для меня количество подписчиков выросло до 2022 (символично).
Последние ~300 человек добавились без какого-либо платного продвижения. Видимо, сарафанное радио и органический трафик делают своё дело.
Я рад, что кому-то это надо. Спасибо вам за поддержку. Вы крутые 😉👍
Планов на будущий год громадьё, посмотрим, что получится сделать.
От себя хочу пожелать - здоровья, счастья и успехов во всех делах. Берегите себя и своих близких 🎄
С наступающим 2️⃣0️⃣2️⃣2️⃣ годом!
Создатель канала Oracle Developer, Кивилёв Денис
👍5
Друзья, всем привет!
Первый пост в 2022.
Очень много планов на этот год. Поговорим об оптимизации, порешаем задачки, будем проводить онлайновые встречи на “горячие“ темы. Есть задумки про собеседования в компаниях и прочие штуки.
Кстати, сегодня стартанул новый поток “ Oracle PL/SQL.Основы”. Ребята пустились в трехмесячное плавание 🚤
Приятно, что с момента поста в прошлом году к нам присоединилось еще 35 человек. Добро пожаловать! 🤝
Завтра начнем 😉
Первый пост в 2022.
Очень много планов на этот год. Поговорим об оптимизации, порешаем задачки, будем проводить онлайновые встречи на “горячие“ темы. Есть задумки про собеседования в компаниях и прочие штуки.
Кстати, сегодня стартанул новый поток “ Oracle PL/SQL.Основы”. Ребята пустились в трехмесячное плавание 🚤
Приятно, что с момента поста в прошлом году к нам присоединилось еще 35 человек. Добро пожаловать! 🤝
Завтра начнем 😉
👍25🔥3
Задача
Существует схема HR. В ней есть таблица TAB1.
Грант на чтение из этой таблицы дан пользователю JAVA_APP_USER.
Варианты для выбора ниже ⬇️
#задача
Существует схема HR. В ней есть таблица TAB1.
Грант на чтение из этой таблицы дан пользователю JAVA_APP_USER.
grant select on hr.tab1 to java_app_user;Затем выполняется команда по блокировке пользователя HR:
alter user hr account lock;Что произойдет при обращении к таблице HR.TAB1 под пользователем JAVA_APP_USER?
select * from hr.tab1;Обсуждение, как всегда, в четверг 🎓
Варианты для выбора ниже ⬇️
#задача
👍2
Схемы и пользователи
Схема - контейнер для хранения объектов.
Пользователь - владелец схемы.
Создавая/удаляя пользователя, вы создаете/удаляете схему.
Создание пользователя
dba_users, all_users, user_users
Это далеко не весь перечень команд и не все возможные варианты опций.
Документация наше всё - create, alter
Сохраняйте в закладки 😉
Oracle Developer
#шпаргалка #user #schema
Схема - контейнер для хранения объектов.
Пользователь - владелец схемы.
Создавая/удаляя пользователя, вы создаете/удаляете схему.
Создание пользователя
create user имяУдаление пользователя со всеми объектами
identified by пароль
default tablespace users
temporary tablespace temp
profile default
quota unlimited on users;
drop user имя cascade;Изменение пароля
alter user имя identified by пароль;Блокировка/Разблокировка
alter user имя account lock;Просрочка пароля
alter user имя account unlock;
alter user имя password expire;Вывод пароля из просрочки
изменить парольСистемные представления с пользователями
dba_users, all_users, user_users
Это далеко не весь перечень команд и не все возможные варианты опций.
Документация наше всё - create, alter
Сохраняйте в закладки 😉
Oracle Developer
#шпаргалка #user #schema
👍19🤩1
Задача: чем завершится обращение к объекту заблокированного пользователя?
полная постановка в посте вторника.
Решение:
Очень часто при проектировании архитектуры в слое БД используют такой подход (ролевая модель). На прошедшем в декабре митапе как раз поднимали эту тему.
Существует основная схема с данными, PL/SQL-логикой и т.п. и интеграционные схемы, которым выдаются определенные гранты на использование объектов основной схемы.
Через интеграционные схемы/пользователей подключаются приложения/люди.
При этом в PROD среде пользователя основной схемы блокируют.
Таким образом, подключиться непосредственно под ним не получится.
Но, при всем при этом, использовать его объекты, при наличии грантов, можно. Блокировка никак не повлияет на доступность объектов схемы.
Профит: безопасность + условная single responsibility + проще поддерживать + ...
Правильный ответ: “запрос будет успешно выполнен”.
Хочется высказаться? Велком в чатик канала.
#решениезадачи #архитектура
полная постановка в посте вторника.
Решение:
Очень часто при проектировании архитектуры в слое БД используют такой подход (ролевая модель). На прошедшем в декабре митапе как раз поднимали эту тему.
Существует основная схема с данными, PL/SQL-логикой и т.п. и интеграционные схемы, которым выдаются определенные гранты на использование объектов основной схемы.
Через интеграционные схемы/пользователей подключаются приложения/люди.
При этом в PROD среде пользователя основной схемы блокируют.
Таким образом, подключиться непосредственно под ним не получится.
Но, при всем при этом, использовать его объекты, при наличии грантов, можно. Блокировка никак не повлияет на доступность объектов схемы.
Профит: безопасность + условная single responsibility + проще поддерживать + ...
Правильный ответ: “запрос будет успешно выполнен”.
Хочется высказаться? Велком в чатик канала.
#решениезадачи #архитектура
👍5🔥2
Установка Oracle 21c Express Edition в Docker 🎥
Друзья всем привет!
Года два назад, я стартанул свой youtube-канал с двух видео об установке СУБД Oracle 18xe, 19ee в Docker.
И вот, 02.12.2021 корпорация "Oracle" добавила набор скриптов для создания Docker-образов(image) для Oracle 21c Express Edition.
Я решил запилить видео-инструкцию о том, как установить Oracle 21XE в Docker. Вероятно, вам может пригодится.
Зачем 21с?
Есть некоторые вкусные фишки, которые появились именно в этой версии. О них я расскажу в течении года.
Почему Express Edition?
С 18й версии СУБД достаточно Express Edition, чтобы пощупать фишки Enterprise Edition. На мой взгляд, для учебных и тестовых целей этой версии хватит на 100%.
Почему Docker?
Фактически Docker это уже стандарт, который необходимо знать, если вы хотите быть в тренде. С его помощью можно легко на вашей ОС развернуть сколько угодно и каких угодно систем. Kafka-кластер, разные версии СУБД Oracle, PostgreSQL и прочее. Основная ОС остается чистой. При этом не важно, стоит у вас MacOS или Windows.
Ставьте, пользуйтесь! 👍🏻
А впереди еще много интересных видео и материалов 🎓
Oracle Developer
#видео #docker #oraclexe
Друзья всем привет!
Года два назад, я стартанул свой youtube-канал с двух видео об установке СУБД Oracle 18xe, 19ee в Docker.
И вот, 02.12.2021 корпорация "Oracle" добавила набор скриптов для создания Docker-образов(image) для Oracle 21c Express Edition.
Я решил запилить видео-инструкцию о том, как установить Oracle 21XE в Docker. Вероятно, вам может пригодится.
Зачем 21с?
Есть некоторые вкусные фишки, которые появились именно в этой версии. О них я расскажу в течении года.
Почему Express Edition?
С 18й версии СУБД достаточно Express Edition, чтобы пощупать фишки Enterprise Edition. На мой взгляд, для учебных и тестовых целей этой версии хватит на 100%.
Почему Docker?
Фактически Docker это уже стандарт, который необходимо знать, если вы хотите быть в тренде. С его помощью можно легко на вашей ОС развернуть сколько угодно и каких угодно систем. Kafka-кластер, разные версии СУБД Oracle, PostgreSQL и прочее. Основная ОС остается чистой. При этом не важно, стоит у вас MacOS или Windows.
Ставьте, пользуйтесь! 👍🏻
А впереди еще много интересных видео и материалов 🎓
Oracle Developer
#видео #docker #oraclexe
YouTube
Как установить Oracle 21c в Docker
Краткая инструкция по установке СУБД Oracle 21с в Docker в редакции Express Edition.
В 21й версии появились некоторые вкусные фишки, которые хотелось бы попробовать. Как вариант быстро развернуть СУБД в Docker. Это не займет много времени.
https://githu…
В 21й версии появились некоторые вкусные фишки, которые хотелось бы попробовать. Как вариант быстро развернуть СУБД в Docker. Это не займет много времени.
https://githu…
🔥12👍9❤1