Skip to content

Управление схемами БД и правами доступа к данным.

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

aladdin-rd0602

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

 

На этапе проектирования должны быть заложены те необходимые решения, которые в дальнейшем позволят выполнять контрольные функции как сотрудникам-специалистам по безопасности данных, так и администраторам БД (DBA).

Но как бы хорош не был изначальный проект, не избежать многочисленных изменений, вносимых в схемы баз данных по мере эксплуатации. Это происходит не только потому, что требуется изменение информационной архитектуры для поддержки новых приложений или бизнес-функций, но и вследствие изменений в законодательстве, нормативных документах или появления дополнительных требований для интеграции бизнеса с партнерами.

Задача контроля и обеспечения безопасности доступа к данным - одна из важнейших и наиболее отвественных для администраторов БД. Бывают случаи, когда в результате мелкого просчета в настройках параметров СУБД, вследствие многочисленных взаимосвяей может быть раскрыта критическая конфиденциальная информация о деятельности компании или персональные данные. В то же время, это одна из наиболее трудоемких ежедневных функций каждого DBA.

Посмотрим, как Embarcadero  DBArtisan облегчает работу администраторов БД, 

dbart 01

сокращает время для достижения результатов при работе с большим количеством различных экземпляров БД или с разными типами СУБД одновременно. Для начала, из окна навигатора с набором подготовленных описаний источников данных следует воспользоваться нужным Data Source для  быстрого соединения с БД. Можно одновременно подключаться и работать с несколькими базами данных различных типов или разных версий. Но для любого типа СУБД диалоговые редакторы схем будут выглядеть похоже настолько, что даже не знакомый с работой в выбранной СУБД администратор без затруднений сможет выполнить создание, изменение или удаление таблиц, ключей, индексов, ограничений и триггеров. В то же время, для каждого типа СУБД предоставляются максимальные возможности для доступа к специфическим особенностям каждой платформы или последним расширениям, включенным в текущую версию СУБД.  

В редакторе схем имеется множество закладок, предназначенных для работы с разными элементами схем, таблиц и всех других объектов. К решению рассматриваемых задач относятся несколько закладок для управления правами доступа. На одной из таких закладок можно назначить, отменить, запретить права доступа пользователей, групп, ролей  к объекту или элементу схемы, вплоть до отдельной колонки. Редактор DBArtisan выгодно отличает возможность назначать сразу несколько прав для одного или нескольких выбранных пользователей. DBArtisan создает скрипт на диалекте языка используемой версии СУБД, который можно проверить и сохранить для дальнейшего выполнения на других серверах.

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

В управлении безопасностью систем баз данных можно назвать три основные задачи любого администратора БД:

  • Контроль текущего состояния (и причин его изменения)
  • Назначение и регулирования прав доступа многочисленных пользователей, групп, ролей и прочих субъектов доступа ко всем и каждому из объектов рабочих БД
  • Обнаружение и исправление имеющихся или потенциальных "дыр" в системах защиты информации, а также максимально оперативное реагирование на обнаруженные нарушения, с целью минимизации потерь.

schedulerВажно, что эти действия должны выполняться регулярно с одними и теми же БД, в определенной последовательности, чаще всего, по расписанию. По данным компании Forrester Research, сегодня каждому администратору БД в крупных компаниях приходится администрировать примерно 50 различных баз данных, в среднем имеющих объем около 50 Гб каждая. Если выполнять все это вручную, то станет очевидна нехватка времени на выполнение других важнейших функций, придется либо расширять штат сотрудников отделов администрирования данных, либо отказываться от ряда проверок, (что может привести к катастрофическим последствиям для компании). Здесь разумно широко применять средства автоматизации, пакетного выполнения различных заданий с немедленным получением по различным каналам извещений о результатах проверок и случаях, требующих внимания.

Автоматизация позволяет избежать излишних временных затрат и расширяет повторное использование проверенных готовых решений, действуя по принципу "Один раз описал - выполняешь многократно"

Стандартные средства, входящие в состав каждой промышленной СУБД, либо недостаточно функциональны, либо приобретаются дополнительно за немалые деньги, и практически всегда работают только с текущей версией СУБД. А как быть, если в компании DBA приходится работать с несколькими типами СУБД и поддерживать 2-3 различные версии каждой?

Каждый тип СУБД имеет множество способов настройки режимов и параметров работы, в том числе, параметров, критически влияющих на надежность доступа и безопасность данных:

  • у MS SQL Server, например, есть параметр xp_cmdshell=0(Disabled), который разрешает (или нет) выполнять строчные команды оболочки ОС в среде СУБД, например, используя T-SQL. Согласно документации, это несет значительный риск нарушения безопасности, предоставляя возможности потенциального разрушения системы или несанкционированного повышения уровня полномочий до уровня владельца или sysadmin.
  • СУБД Oracle может принимать три допустимых значения параметра REMOTE_LOGIN_PASSWORDFILE, управляющих сохранением и доступом к информации о паролях, в том числе и учетных записей с наивысшими полномочиями доступа.

Если компания имеет широкую сеть филиалов, в каждом из которых используются БД, то удобно использовать стандартизированный набор настроек и проводить регулярные проверки на соответствие параметров рабочей конфигурации этому стандарту.  Эти регулярные проверки не только должны обнаружить несоответствование требованиям принятых стандартов, но и ответить на вопросы:

  • когда возникло несоответствие?,
  • зачем/вследствие чего это произошло?,
  • кто внес изменения?

Embarcadero предлагает удобные средства для решения перечисленных задач. 

Для начала следует создать эталонный стандарт конфигурации, которому должен следовать каждый сервер БД данного типа в системе.cm cfg

Для этого в программе Embarcadero DB Change Manager нужно выполнить всего два действия:

  • описать соединение с источником данных (Data Source) - фактически соединиться с рабочим экземпляром сервера БД; Этот описанный источник данных будет применяться в дальнейшем для связи с этим сервером и БД
  • Создать эталонный набор параметров конфигурации серверов этого типа в компании из актуального набора параметров конфигурации сервера, с которым выполнено соединение, путем уточнения списка необходимых стандартных параметров и их разрешенных (или принятых) значений;
    сохранить его в виде стандарта.

Чтобы регулярно выполнять проверку соответствия конфигурации различных серверов этому стандарту нужно подготовить задание по сравнению конфигурации. Проверять на соответствие стандарту можно "живую" рабочую БД, или архив, или другой эталон, или сразу несколько целевых конфигураций разных типов одновременно.

В результате сопоставления:

  • создается отчет (доступный в различных форматах представления),  
  • указанные в задании сотрудники получат соответствующие извещения на свой email (или в другой канал получения нотификаций),
  • может быть создан готовый к выполнению скрипт для устранения несоотвествий или внесения модификаций в принятый стандарт (в зависимости от принятых в компании политик).

Можно даже автоматически выполнить этот скрипт, но следует настороженно  относится к такому доверительному подходу к полностью автоматическим решениям. В любом случае, все изменения будут надежно задокументированы, а предыдущие версии стандарта останутся в архиве, совсем, как в привычных системах управления исходными тестами.

Все задания DB Change Manager могут выполняться много раз в разное время, регулярно и по расписанию, в автоматическом режиме, не требующем присутствия пользователя. Можно сохранить любое задание в виде, предназначенном для выполнения из командной строки с указанными параметрами. Поддерживается командная строка Windows или Linux.

Для того, чтобы находить несоответствия стандартным правилам доступа, назначенным тем или иным объектам схем баз данным, используется задание типа DB Schema Comparison Job.

Например, чтобы обнаружить, что пользователь ABC на этом экземпляре базы данных с понедельника имеет привилегии системного администратора или супер-пользователя. Или, что права доступа группы пользователей или роли отличаются от разрешенных, зафиксированных в документации или внутренних документах. Кто, когда, каким образом внес эти изменения - легко определяется с помощью таких заданий.

Для аудита и контроля изменений в жизненно важных, базовых данных и НСИ служат задания типа Data Comparison Job.

Автоматизированное управление изменениями (Change Management) - это одна из важнейших функций современного администратора БД. Это ключ к его способности понимать, что происходит в информационной системе.

Возможность вносить изменения в схемы рабочих БД, эффективно управлять правами доступа  - это гарантия своевременного и оперативного реагирования на выявленные несоответствия принятым политикам и стандартам.

Подробно о решениях для управления схемами и правами доступа рассказывалось на вебинаре: http://goo.gl/xFfs5M

 

 

Embarcadero ER/Studio и ERwin снова расходятся

В марте этого года было объявлено, что Embarcadero и компания CA заключили соглашение по приобретению у CA продуктовой линейки  ERwin. С тех пор нам достаточно часто задают вопросы о статусе ERwin,  о планах нашей компании по развитию и поддержке этого продукта.

Вот последняя информация по этому вопросу, так сказать, из первых рук:

Объявленная 13 марта 2014 года сделка прекращена в связи с позицией правительства США, изложенной в пресс-релизе министерства юстиции. Это связано с вопросами конкуренции и антимонопольного законодательства - имея лидирующие позиции в сегменте средств моделирования для баз данных с ER/Studio, и приобретя ERwin, Embarcadero получила бы статус монополиста на этом сегменте рынка.

Embarcadero всегда подтверждала свою приверженность стратегическому направлению на создание, развитие и поддержку решений и инструментов для проектирования архитектуры корпоративных данных и моделирования баз данных.

ERwin продолжает находиться "в руках" CA, однако CA трактует эту продуктовую линию как "прекращенную операцию" (discontinued operations). Ниже приведен пресс релиз CA на этот счет:

NEW YORK, Nov 03, 2014 (BUSINESS WIRE) — CA Technologies CA,  today announced that the agreement to sell its CA ERwin® data modeling business to Embarcadero, announced on March 13, 2014, has been terminated. It is anticipated that the transaction would not receive required regulatory approvals in a timely fashion, and therefore would not meet certain closing conditions.

CA is highly focused on supporting and driving value for CA ERwin customers, partners and employees. The company will continue to invest in and execute on product development, marketing and sales plans. Mark Lukianchuk, a 17-year CA veteran, has been appointed to lead the CA ERwin business. Key members of the leadership team will remain in place.

The award-winning CA ERwin is the most-used data modeling tool among data professionals, and is sold almost exclusively through more than 500 partners in over 70 countries. In August 2014, CA ERwin was named “Best Modeling Solution” in the inaugural Database Trends and Applications (DBTA) magazine Readers’ Choice Awards.

For financial accounting purposes, CA Technologies will continue to recognize the CA ERwin business as discontinued operations.

В отличие от Embarcadero, стратегия CA концентрируется на таких направлениях, как управление ИТ (IT Business Management) и управление разработкой и безопасностью на мейнфрэймах и в распределенных, облачных и мобильных средах:   

Jacob Lamm, Executive Vice President, Strategy and Corporate Development of CA Technologies: "We are actively managing our portfolio and investments, and the sale of CA ERwin further sharpens our focus on core capabilities, such as IT Business Management, DevOps and Security across mainframe, distributed, cloud and mobile environments."

Продукты линии управления данными (Data Management Business) - ERWin и ArcServe - не находящиеся более в фокусе компании, были в 2014 "выставлены на продажу", и в июле  ArcServe был продан инвестору.

ER/Studio продолжает находится в фокусе стратегии нашей компании:

  • инвестиции в это направление растут;
  • Embarcadero на всех географических рынках успешно конкурирует с ERWin и переводит заказчиков с этой платформы на ER/Studio - за счет лучшего сервиса, инноваций, широкого функционала и уверенности в будущем продукта. ER/Studio демонстрирует существенно большую производительность на операциях с большими моделями данных, например, check-in/out работает в 5-6 раз быстрее (вместо часа - 10 минут).    Более подробному рассказу о том, что получают пользователи при работе в ER/Studio по сравнению с Erwin, стоит посвятить отдельную публикацию.
  • Компания Microsoft, например, после анализа всех средств моделирования данных остановила свой выбор системы для внутреннего использования на ER/Studio.
  • Миграция моделей данных, сделанных в ERwin, в ER/Studio легко и без потерь выполняется при помощи конвертера, включенного в состав ER/Studio. Стоит отметить, что ERwin – одно из многих решений для моделирования данных, которые поддерживает этот конвертер.
  • Новые технологии TeamServer и неограниченый web-доступ пользователей позволяют расширять круг специалистов, работающих с моделями данных, и шире вовлекать бизнес-пользователей в командную работу над данными, лучше понимая их требования и эффективно используя накопленные коллективные знания об информационных активах.

Оба решения давно признаны пользователями лучшими в своем роде, но с учетом этой информации, можно ожидать, что ER/Studio продолжит свое развитие и будет и далее опережать функциональные возможности ERwin. Embarcadero продолжит помогать пользователям ERwin двигаться вперед.

Важное объявление

Мы "переехали" на новую техническую площадку.

Новый адрес моего блога "Маг Ри БД":

http://community.embarcadero.com/index.php/blogs/blogger/listall/andrew-sovtsov

С нетерпением ждем на этой странице!

Объявление

Друзья! Коллеги!

Последний месяц первого квартала - в сплошных поездках по стране и СНГ. График настолько плотный, что нарушаются все планы, в том числе, проведения вебинаров. Надеюсь, я найду у всех понимание, почему пришлось сдвинуть два последних вебинара на начало апреля. Приношу глубочайшие извинения и приглашаю все же принять участие 2 и 9 апреля, соответственно.

До встречи!

Delphi XE5 и MongoDB (продолжение)

Продолжаем конспект из предыдущего поста http://blogs.embarcadero.com/asovtsov/index.php/archives/615, посвященного разбирательству, можно ли разрабатывать приложения на Delphi XE5, получающие и сохраняющие данные в БД MongoDB.

Установка драйвера, сборка тестовых примеров и поверка их прошли без особых проблем.

Как выглядит технология обращения к MongoDB из примера программы на Delphi? Заглянем внутрь примера AddressBook.

const
  db = 'test';
  ns = db + '.addresses';

...

initialization
  mongo := TMongo.Create();
  if not mongo.isConnected() then begin
    ShowMessage(NoConnectMsg);
    Halt(1);
  end;
  mongo.indexCreate(ns, 'phone');

Соединение с сервером открывается сразу же при инициализации приложения.  Здесь используются значения по-умолчанию: localhost:27001. Поэтому нет установок свойств объекта коннекции.

Дальше видны особенности архитектуры СУБД и драйвера.

MongoDB это документ-ориентированная БД. Хранит "документы" - иерархические объекты, максимально близкие по структуре с JSON-объектами. Имеется мощный язык запросов, основные компоненты которого являются такими же объектами. Поэтому, так легко работать с запросами и их результирующими наборами данных из языков JavaScript, Python и т.п. Для обеспечения максимального быстродействия внутри эти документы хранятся в формате BSON - "binary JSON". Библиотека доступа содержит классы для работы с BSON. Для сериализации параметров запросов и полей для записи служат методы класса TBsonBuffer, учитывающие особенности представления типов элементов данных. Тем не менее, отсутствует метод (или класс), чтобы напрямую сериализовывать JSON-объект в запрос или документ. Результат запроса представляется объектом класса TBson, предоставляющего способы работы с каждым типом элементов данных и для итерации по BSON-документу, но не дающего метода десериализации BSON в строку или JSON-объект.

В рассматриваемом примере это и не требуется, там с успехом применяются существующие методы формирования BSON-запросов и чтения BSON-результатов.

procedure TForm1.btnSaveClick(Sender: TObject);
  var
    bb : TBsonBuffer;
    b : TBson;
    query : TBson;
begin
  query := BSON(['phone', txtPhone.Text]);
  if (mongo.findOne(ns, query) = nil) Or
    (MessageDlg('A record already exists with that phone number.  Replace?', mtWarning, [mbYes, MbNo], 0) = mrYes) then begin
      bb := TbsonBuffer.Create();
      bb.append('name', txtName.Text);
      bb.append('address', txtAddress.Text);
      bb.append('city', txtCity.Text);
      bb.append('state', txtState.Text);
      bb.append('zip', txtZip.Text);
      bb.append('phone', txtPhone.Text);
      b := bb.finish();
      mongo.update(ns, query, b, updateUpsert);
      ShowMessage('Record saved.');
    end;
end;
Далее...

Continue reading ›

Delphi XE5 и MongoDB

Пост в виде конспекта, чтобы не забыть и сохранить полученный опыт и идеи на будущее

Постановка вопроса

Развитие технологий хранения и обработки данных, в том числе и неструктурированных, большого объема и выраженной вариативности, вызвало стремительное развитие СУБД, альтернативных классическим реляционным. Яркий пример того — прогресс NoSQL-технологий, приходящих на замену давно известным реляционным базам данных. Вчера ещё веб базировался на нескольких известных СУБД, однако уже сегодня появилось около пяти NoSQL-решений, достойно зарекомендовавших себя. Решения оттачиваются, извлекаются уроки, — и, видя, что новая технология развивается, остальные пробуют применять её для своих нужд.

Одна из двух наиболее быстро развивающихся технологий - СУБД MongoDB компании 10gen (с этого года называется MongoDB) - документ-ориентированная NoSQL СУБД с открытым исходным кодом, горизонтально масштабируемая, обеспечивающая великолепное быстродействие на операциях чтения данных. Как документ-ориентированная СУБД, MongoDB — это довольно обобщённое NoSQL решение. Её можно рассматривать, как альтернативу реляционным СУБД.

Основная особенность - способность хранить и обрабатывать документы сложной структуры, произвольной вложенности, обеспечивая быстрый индексированный поиск по любому полю или набору полей. Такого типа СУБД называют «не имеющими схемы» (Schemaless), поскольку разные записи могут содержать документы различной структуры, причем структуру документа можно менять в дальнейшем. Обладает удобным языком запросов/модификации.  Внутренне представление документов очень близко совпадает с привычными всем записями в формате JSON, что делает их пригодными к «бесшовной» интеграции как в WEB и RESTful приложения, так и в «обычные» прикладные задачи уровня Enterprise.

Встроенным языком для MongoDB Shell является JavaScript. Компания MongoDB официально поддерживает средства программного доступа  к данным из языков:

  • C
  • C++
  • C#
  • Go
  • Erlang
  • Java
  • JavaScript
  • Node.js
  • Perl
  • PHP
  • Python
  • Ruby
  • Scala

Средства и драйвера доступа к БД MongoDB из других языков и платформ программирования поддерживаются очень активным сообществом разработчиков.

Цель - обеспечить и проверить возможность работы с MongoDB из Delphi XE5 - функционирующей в среде Windows платформы создания приложений для разных типов устройств и сред исполнения ПО.

Continue reading ›

Tagged , , , ,

Книги и материалы по проектированию БД

Недавно мой коллега спросил, могу ли я порекомендовать заказчикам литературу для освоения задач и методов моделирования баз данных, в частности моделей данных различного уровня. Ответ на этот вопрос, как мне кажется, будет полезен для многих.

Я столкнулся с этой темой еще в начале своей трудовой деятельности. Реляционные БД еще только начинали свой победный взлет популярности, а о персональных компьютерах тогда еще никто не слышал.

Дейт, Мартин - вот базисные книги наших времен.

Чем же сегодня пользуются ведущие архитекторы баз данных у нас в стране и за рубежом?

Continue reading ›

Организационное, июль 2013

Наступил летний период отпусков. Точка!

В связи с этим, мы решили приостановить проведение вебинаров по продуктам Embarcadero для БД до возвращения наших авторов, гостей и слушателей из отпусков. Набирайтесь сил, здоровья и энтузиазма на этот и весь следующий год!  Мы готовим ряд обновлений наших продуктов и будем представлять новые.

Для тех, кто не смог принять участие в прошедших вебинарах, по каким-либо причинам хотел бы еще раз прослушать их, есть возможность взять видеозаписи на YouTube:

https://www.youtube.com/user/MrAndysova/videos

И не забывайте про этот блог!

HTML5 Builder: Где находится PDO

Не собирался писать об этом, но получил письмо от клиента с вопросом: "Я создал форму в HTML5 Builder, из Data Explorera перетащил на нее нужную мне таблицу MS SQL Server, запустил, а на экране браузера вижу непонятное сообщение, что не получилось найти PDO драйвер. В чем дело?". Я хочу ответить на него здесь. Кому-то вопрос покажется наивным и по-детски простым. Но, напомню, мы позиционируем этот продукт не для гиков-экспертов по PHP разработке, а для разработчиков на Delphi, кому необходимо быстро создать WEB-приложение или страницу прямо сейчас, без получения полного академического обучения.

  1. Установите правильные параметры соединения с БД MS SQL Server. Например, для моей БД параметры на картинке снизу обеспечивают правильное соединение с удаленным сервером. Обязательно протестируйте соединение, нажав кнопку Test Connection.

    Вот тут уже возникает первый "капкан": для того, чтобы соединение сработало, нужно, чтобы на этом ПК предварительно был установлен Microsoft SQL Server Native Client, соотвествующий версии вашего MS SQL server и разрядности вашей ОС. Взять его можно в Microsoft Download Center.  Я взял пакет установщика здесь

Continue reading ›

Tagged , ,

Создание таблиц реляционной БД

Одно из самых частых дел, которые приходится выполнять разработчикам БД - это создание новых баз данных, таблиц в них, связей между ними и индексов для ускорения поиска. Очень часто приходится, как бы, повторять структуру, которая уже была реализована ранее на другой СУБД, или быстро вводить в действие таблицы для более удобного выполнения промежуточных операций. По мере продвижения проекта к финишу, часть такого рода таблиц уходит, часть преобразуется во временные или модифицируется для оптимизации алгоритмов, но всегда есть потребность в быстром создании таких "рабочих", в известном смысле, объектов для разработчиков.

Как и все в мире компьютеров, эта задача может быть решена различными способами. Я считаю одним из самых удобных и практичных - использование инструментов Embarcadero для работы с БД. Хотя создать таблицу можно из любого из 4 продуктов из состава DB Power Studio, реальные преимущества мы ощутим в среде DBArtisan или Rapid SQL. Вы наверняка уже встречались с этими продуктами, например, в этом блоге. :) Несмотря  на внешнюю очень большую схожесть интерфейсов редакторов объектов БД в этих двух инструментах, в них отражены существенные отличия в методах и задачах для решения которых предназначены эти средства.

DBArtisan - это средство работы администраторов БД (DBA - по английски). Я уже писал о том, что DBA много не бывает, и это к лучшему! Как и хирургам, только самым умелым, знающим и опытным могут доверить свою информацию - источник жизнеспособности и прибыльности - крупные компании. DBArtisan - это инструмент индивидуальной работы, средство обнаружить и настроить практически любой глубинный элемент той или иной СУБД. Он умеет работать из единого графического интерфейса почти с любой СУБД, параллельно, за счет применения одинаковых парадигм работы быстро получить знания и опыт выполнения большинства административных функций на менее знакомых платформах СУБД, в том числе, создание, поиск и модификацию объектов внутренней структуры БД, например, таблиц, представлений, индексов и т.п.

Команде разработчиков я бы рекомендовал пользоваться Rapid SQL. Здесь каждый разработчик может создать свой "локальный" проект, разрабатывая и тестируя общие элементы не мешая остальным, воспользоваться преимуществами системы управления исходными тестами на SQL и DDL.

Настало время запустить Rapid SQL. Нужна лицензия. Но можно воспользоваться бесплатной лицензией, которая действует в течение пробного периода (trial license). Сам продукт доступен для загрузки с сайта http://www.embarcadero.com в двух видах - обычный установщик и Instant Trial. Последний вариант выгоден, если планируется опробование нескольких продуктов, поскольку с ним не требуется установка каждой версии каждой программы - можно просто дважды кликнуть по скачанному приложению и оно запустится. Здесь используется технология Appwave. Бесплатную пробную лицензию Embarcadero высылает на электронную почту, указанную при регистрации пользователя на сайте.

Традиционно для среды Windows, слева расположено дерево подключений/источников данных и их внутренних объектов. Пользователи не только сами могут создавать и запоминать практически неограниченное количество источников, но и организовывать их в группы, маркировать их в соответствии с удобной для них системой цветовых обозначений, обмениваться  описаниями источников с другими программами Embarcadero. Выберем источник - на виртуальном сервере Oracle. Двойной клик по нему позволит открыть соединение и после этого раскроет содержимое этой ветки. В зависимости от задач бывает удобно отсортировать дерево по типам объектов или по "владельцам" объектов.

Мне потребовалось создать в схеме PRR несколько таблиц для сбора и обработки информации о блогах. Continue reading ›

Tagged , , , , , , , , , ,

Bad Behavior has blocked 0 access attempts in the last 7 days.

Close