Генерируем MD5 HASH на Oracle PL/SQL

Осваиваем Oracle и PL/SQL

Простой пример генерации MD5 на Oracle PL/SQL.

declare
  cln_md5raw raw(2000);
  out_raw raw(16);
begin
  cln_md5raw := utl_raw.cast_to_raw('Наш текст для хеширования');
  dbms_obfuscation_toolkit.md5(input=>cln_md5raw,checksum=>out_raw);
  -- Выводится hex версия (32 символа)
  dbms_output.put_line(lower(out_raw));
end;


100% работает на версии Oracle 11g.

Комментировать...

Oracle PLSQL MD5

Объединение выборок UNION, INTERSECT, MINUS в Oracle (PL/SQL)

Осваиваем Oracle и PL/SQL

В Oracle присутствует возможность объединять выборки. Для объединения используются операторы: UNION (с вариацией UNION ALL), INTERSECT и MINUS. Рассмотрим работу всех этих операторов.

1. UNION и UNION ALL

UNION — объединяет наборы данных, но при этом исключает дублирующие записи, тоесть если у вас в первом и во втором наборе есть одинаковая запись то в результирующем наборе будет только одна такая запись.
UNION ALL — объединяет наборы данных и оставляет дублирующие записи, тоесть если в первом и во втором наборе есть одинаковые записи то в результирующем наборе будут все эти записи.

Для экспериментов, создадим две таблицы и заполним их тестовыми данными.

Читаль далее...

Oracle PLSQL UNION MINUS INTERSECT объединение SQL

Вставка записей в таблицу с одновременной проверкой и изменением в случае наличия записи в принимающей таблице MERGE в Oracle (MERGE INTO TABLE)

Осваиваем Oracle и PL/SQL

MERGE — Функция предназначенная для объединения результата некоторой выборки в принимающую таблицу, при этом вовсе не обязательно чтобы состав полей совпадал.

Применяется когда необходимо дополнить некоторую таблицу новыми данными, одновременно обновив уже имеющиеся в таблице данные.

Реализация:

merge into таблица_приемник t1
      using (select * from таблица_источник) t2
      on (t1.id = е2.id and t1.parent_id = t2.parent_id)
      when matched then 
	-- Обновляем если совпадение в таблице t1 найдено
        update 
         set t1.info = t2.info
      when not matched then 
	-- Добавляем если совпадение в таблице t1 не найдено
        insert 
         (t1.id, t1.parent_id, t1.info)
         values
         (t2.id, t2.parent_id, t2.info);


Вот и всё.

Вопросы приветствуются.

Комментировать...

merge PLSQL Oracle database объединение таблицы

XML в Oracle PL/SQL (Часть 2 - Выборки в виде XML)

Осваиваем Oracle и PL/SQL

В предыдущей публикации были рассмотрены некоторые приёмы манипуляции с XML в Oracle, теперь рассмотрим как делать выборку данных напрямую в XML. Это на мой взгляд самая интересная часть.

На практике выяснилось, что для Oracle в большинстве случаев не существенно, вернуть ли набор записей или сформированную готовую XML этого набора записей — по времени выполнения эти действия субъективно практически равноценны. Но вот если у вас есть потребность в формировании некоторой XML структуры в приложении на основе данных полученных из БД Oracle, практически наверняка это будет довольно ресурсоемкое мероприятие, гораздо легче переложить этот функционал на базу данных, хотя на первый взгляд и кажется что это не то, чем должен заниматься движок базы данных.

Читаль далее...

Oracle PLSQL XMLType XMLElement xmlattributes XMLAGG XMLSequence insertchildxml xmlconcat

Работа с XML в Oracle PL/SQL (Часть 1)

Осваиваем Oracle и PL/SQL

В этой публикации я приведу основные способы работы с XML в Oracle, которые сам использую.

Здесь будут рассмотрены на примерах такие операторы и функции как: XMLType, XMLElement, xmlattributes, XMLAGG, XMLSequence, insertchildxml, xmlconcat.

Итак начнем с объявления переменной в которой будем хранить текст XML.
Делается это так:

declare
  --Задаем переменную
  my_var XMLType;
begin
  --Присваиваем значение нашей переменной
  my_var:= XMLType('<root><item>Просто пробуем XML в Oracle</item></root>');
  --Выводим в вывод
  dbms_output.put_line(my_var.GetClobVal());
end;


Для начала рассмотрим некоторые приёмы работы с XML, чуть позже перейдем к генерации XML из данных при выборке.

Читаль далее...

Oracle PLSQL XMLType XMLElement xmlattributes XMLAGG XMLSequence insertchildxml xmlconcat

Oracle - Выбираем все пользовательские таблицы с полями и комментариями.

Осваиваем Oracle и PL/SQL

Для того, чтобы написать скрипт выбора всех пользовательских таблиц с полями и комментариями нам понадобятся системные таблицы:

user_tables

--Выбираем все пользовательские таблицы и их параметры
select * from user_tables


user_tab_comments
--Выбираем комментарии к пользовательским таблицам
select * from user_tab_comments


user_tab_columns
--Выбираем все поля и их параметры по пользовательским таблицам
select * from user_tab_columns


user_col_comments
--Выбираем комментарии к полям пользовательских таблиц
select * from user_col_comments

Читаль далее...

Oracle PLSQL tables user_col_comments user_tables user_tab_comments user_tab_columns

Функция Oracle TO_DATE (PL/SQL)

Осваиваем Oracle и PL/SQL

Функция TO_DATE — преобразует строку в переменную времени DATE.

Синтаксис:

TO_DATE(исходная_строка, Формат, NLS_LANGUAGE);
--Последний параметр NLS_LANGUAGE (как я понимаю для задания кодировки) мне не разу не пригодился.

Читаль далее...

PLSQL Oracle function функции to_date

Функция Oracle TO_NUMBER (PL/SQL)

Осваиваем Oracle и PL/SQL

Функция TO_NUMBER — преобразует строковое значение в числовое (NUMBER)

Синтаксис:

TO_NUMBER(исходная_строка, Формат, NLS_LANGUAGE);
--Последний параметр NLS_LANGUAGE (как я понимаю для задания кодировки) мне не разу не пригодился.

Читаль далее...

PLSQL Oracle function функции to_number

Функция Oracle TO_CHAR (PL/SQL)

Осваиваем Oracle и PL/SQL

Функция TO_CHAR — преобразует дату или число в строку.

Синтаксис:

TO_CHAR(исходное_значение, Формат, NLS_LANGUAGE);
--В качестве исходного значения может быть передана как дата <strong>DATE</strong> так и число <strong>NUMBER</strong>.
--Последний параметр NLS_LANGUAGE (как я понимаю для задания кодировки) мне не разу не пригодился.

Читаль далее...

PLSQL Oracle функции function to_char

Работа со строками в Oracle (PL/SQL)

Осваиваем Oracle и PL/SQL

Основные способы обработки строковых значений в Oracle.
В этой публикации я приведу основные функции работы со строками которые встречались мне в работе, и будут полезны всем кто работает с Oracle.

CONCAT — Объединяет две строки

SQL> select concat('Пётр ','первый') from dual;
 
CONCAT('ПЁТР','ПЕРВЫЙ')
-----------------------
Пётр первый

Читаль далее...

Oracle PLSQL строки программирование SQL функции

Работа с Postgresql в C#

Не так давно занялся разработкой приложения на C# работающего на базе PostreSQL, появилась информаци (читать далее...)

725  
Работа с XML в Oracle PL/SQL (Часть 1)

В этой публикации я приведу основные способы работы с XML в Oracle, которые сам использую. Здесь буд (читать далее...)

609  
OpenXML - Пример создания Excel файла на C#

В данной публикации приведен пример генерации Excel файла при помощи библиотеки OpenXML. Отличие это (читать далее...)

599  
Работа со строками в Oracle (PL/SQL)

Основные способы обработки строковых значений в Oracle. В этой публикации я приведу основные функции (читать далее...)

410  
Поиск и регулярные выражения в MySQL

СУБД MySQL имеет различные инструменты для осуществления поиска, среди которых оператор LIKE, осущес (читать далее...)

363  
Руководство пользователя для терминала сбора данных SEUIC 7P

Поскольку на просторах Российского интернета информации по китайским терминалам сбора данных Seuic A (читать далее...)

339  
Курсоры в MSSQL - перебор выборки в цикле.

Команды манипулирования данными SELECT, UPDATE, DELETE работают сразу с группами строк. Эти группы, (читать далее...)

337  
Передача параметров между формами в C#

Часто возникает необходимость передать определённые параметры между формами в одном приложении, напр (читать далее...)

309  
Работа с MySQL в C#

Надеюсь данная публикация не даст читателям повторить мои ошибки и поможет сделать изначально правил (читать далее...)

302  
Подключение датчика температуры и влажности DHT11 к Arduino UNO R3

Подключение датчика температуры DHT11 задача довольно простая. Всё, что нам понадобится для подключе (читать далее...)

294