Как стать автором
Поиск
Написать публикацию
Обновить
3

Microsoft SQL Server *

Система управления реляционными базами данных

Сначала показывать
Порог рейтинга
Уровень сложности

Проверяем MS SQL на прочность. Векторы атак на MS SQL Server

Время на прочтение11 мин
Количество просмотров38K
image

Практически ни один серьезный пентест не обходится без проверки СУБД, ведь это одна из самых популярных у злоумышленников дверей к желаемой информации и машине. В крупных проектах в качестве СУБД очень часто используется MS SQL Server. И о проверке именно его безопасности мы сегодня и поговорим. Открывать Америку не будем — опытные камрады лишь освежат свои знания, а вот для тех, кто только начинает осваивать тему, я постарался максимально подробно разложить все по пунктам.
Читать дальше →

Обзор ServiceStack.OrmLite — micro-ORM для .NET

Время на прочтение9 мин
Количество просмотров18K
OrmLite — это дружелюбная micro-ORM с открытым исходным кодом и коммерческой лицензией (бесплатна для небольших проектов с ограничением в 10 таблиц). Входит в состав известного фреймворка ServiceStack (и обладает высокой производительностью — взгляните на benchmark от разработчиков Dapper). В данной статье мы рассмотрим основы работы с OrmLite в связке с SQL Server. Если сравнивать OrmLite и Entity Framework, то сразу бросается в глаза отсутствие контекста и отслеживания изменений (change tracking). И это далеко не единственные отличия.

План статьи:

Заинтересовавшихся приглашаю под кат.
Читать дальше →

Microsoft SQL Server Data Tools

Время на прочтение8 мин
Количество просмотров60K
В данной статье хотел бы рассказать про набор полезных дополнений к Visual Studio, которые могут в значительной мере облегчить разработку баз данных на основе MS SQL Server.
Основными преимуществами использования SSDT я бы выделил следующее:
  • возможность простого изменения (refactoring) схемы базы (можно переименовать колонку таблицы и все Views, Functions и Stored Procedures ссылающиеся на неё автоматически будут исправлены для отражения изменений)
  • создание юнит тестов для базы данных
  • хранение структуры базы данных в Source Control
  • сравнение схемы/данных c возможностью генерации скрипта для приведения схемы/данных к требуемому состоянию

Безусловно на этом плюсы использования SSDT не заканчиваются, но остальное не так сильно впечатляет, как то, что упомянуто выше. Если вас интересует, как воспользоваться этими и другими преимуществами — прошу под кат.
Читать дальше →

DevCon 2015: анонс третьей волны докладчиков конференции

Время на прочтение7 мин
Количество просмотров4K
Дорогие друзья!
С удовольствием сообщаю вам, что билеты на крупнейшую конференцию Microsoft DevCon 2015 были распроданы за месяц до начала проведения! Мы наблюдали огромный интерес к конференции и продолжаем работать над тем, чтобы сделать DevCon 2015 самым заметным и интересным событием года.
Сегодня мы рады представить вам очередную третью волну докладчиков конференции DevCon 2015 и открыть вам некоторые темы и очередные подробности технической программы конференции. Ранее мы уже анонсировали несколько десятков докладчиков DevCon 2015, описание и подробную информацию о их докладах вы можете найти в этой и этой статьях.



Прежде всего, мы рады в очередной раз приветствовать на конференции Сергея Олонцева – одного из немногих обладателей самого высокого сертификата Microsoft Certified Master по SQL Server. Сергей представит на конференции замечательный доклад о внутреннем устройстве SQL Server 2014, а так же представит отдельный эксклюзивный для участников конференции мастер-класс “Оптимизация производительности в SQL Server до 2014 версии и в ней на примерах”!

Другим замечательным гостем конференции, уже не в первый раз, станет Ларри Либерман — продуктовый менеджер платформы Windows, Microsoft, США! Ларри, как и в прошлый раз приедет на DevCon 2015 для того, чтобы поделиться с участниками конференции самыми последними новинками платформы Windows для разработчиков, которые будут представлены на конференции Build 2015! Ларри Либерман сделает на DevCon два доклада, темы его выступлений мы раскроем сразу после проведения Build, следите за новостями на сайте конференции.
Читать дальше →

Учебник по языку SQL (DDL, DML) на примере диалекта MS SQL Server. Часть пятая

Время на прочтение41 мин
Количество просмотров205K

Предыдущие части




В данной части мы рассмотрим


Здесь мы в общих чертах рассмотрим работу с операторами модификации данных:
  • INSERT – вставка новых данных
  • UPDATE – обновление данных
  • DELETE – удаление данных
  • SELECT … INTO … – сохранить результат запроса в новой таблице
  • MERGE – слияние данных
  • Использование конструкции OUTPUT
  • TRUNCATE TABLE – DDL-операция для быстрой очистки таблицы

В самом конце вас ждут «Приложение 1 – бонус по оператору SELECT» и «Приложение 2 – OVER и аналитические функции», в которых будут показаны некоторые расширенные конструкции:
  • PIVOT
  • UNPIVOT
  • GROUP BY ROLLUP
  • GROUP BY GROUPING SETS
  • использование приложения OVER


Операции модификации данных очень сильно связаны с конструкциями оператора SELECT, т.к. по сути выборка модифицируемых данных идет при помощи них. Поэтому для понимания данного материала, важное место имеет уверенное владение конструкциями оператора SELECT.
Читать дальше →

Учебник по языку SQL (DDL, DML) на примере диалекта MS SQL Server. Часть четвертая

Время на прочтение32 мин
Количество просмотров400K

Предыдущие части




В данной части мы рассмотрим


Многотабличные запросы:
  • Операции горизонтального соединения таблиц – JOIN
  • Связь таблиц при помощи WHERE-условия
  • Операции вертикального объединения результатов запросов – UNION

Работу с подзапросами:
  • Подзапросы в блоках FROM, SELECT
  • Подзапрос в конструкции APPLY
  • Использование предложения WITH
  • Подзапросы в блоке WHERE:
    • Групповое сравнение — ALL, ANY
    • Условие EXISTS
    • Условие IN

Читать дальше →

Intel Xeon`ы врываются на рынок отказоустойчивых RISC-серверов, построенных по лекалам mainframe

Время на прочтение4 мин
Количество просмотров14K
Несмотря на скепсис многих аналитиков, «проект Odyssey», запущенный компанией Hewlett-Packard осенью 2011 года, сегодня реализован в реальных продуктах.

С марта 2015 года Hewlett-Packard начинает поставки своих серверов Integrity Superdome X и NonStop X с процессорами Intel Xeon E7. Эти новые сервера предназначены для выполнения ответственных задач под управлением ОС Linux, а чуть позднее обещают поддержку Microsoft Windows Server 2012 и SQL Server — см. статью: «HP представила серверы Superdome и NonStop на платформе x86».

Integrity Superdome X и NonStop X имеют до 16 процессоров Xeon и до 3 Тб ОЗУ, и объединяя их в кластеры, из них можно построить единую систему включающую до 4080 процессоров (настоящий суперкомпьютер)!

Кроме Hewlett-Packard отказоустойчивые сервера, построенные по лекалам mainframe и включающие ширпотребные процессоры Intel Xeon E7 сегодня также выпускает компания Fujitsu. И менеджеры Fujitsu грозятся своим сервером PRIMEQUEST 2000 уничтожить RISC-сервера как класс:) — см. статью: «FUJITSU против всех или Японский убийца RISC серверов».

Кстати Hewlett-Packard, тем у кого исторически используется СУБД Microsoft SQL Server, а бизнес вырос до невероятных пределов и переходить (принципиально меняя своё разработанное ПО) на RISC/UNIX-системы очень не хочется — теперь рекомендует просто купить новый mainframe-подобный сервер HP Integrity Superdome X на Intel Xeon и под управлением Microsoft Windows Server 2012 с СУБД SQL Server!
Для некоторых корпоративных IT-отделов это новость, может показаться невероятной новой возможностью (как открытие Америки Колумбом), снимающая многолетнюю головную боль.
Microsoft, со своей стороны, обещает бросить все свои силы на поддержку этих чудных серверов HP Integrity Superdome X прокладывающими мост между двух миров: «ширпотребными x86-серверами» и «критически важным корпоративным бизнесом»!
Читать дальше →

Учебник по языку SQL (DDL, DML) на примере диалекта MS SQL Server. Часть третья

Время на прочтение26 мин
Количество просмотров362K

Предыдущие части




О чем будет рассказано в этой части


В этой части мы познакомимся:
  1. с выражением CASE, которое позволяет включить условные выражения в запрос;
  2. с агрегатными функциями, которые позволяют получить разного рода итоги (агрегированные значения) рассчитанные на основании детальных данных, полученных оператором «SELECT … WHERE …»;
  3. с предложением GROUP BY, которое в скупе с агрегатными функциями позволяет получить итоги по детальным данным в разрезе групп;
  4. с предложением HAVING, которое позволяет произвести фильтрацию по сгруппированным данным.

Читать дальше →

Учебник по языку SQL (DDL, DML) на примере диалекта MS SQL Server. Часть вторая

Время на прочтение31 мин
Количество просмотров356K

Вступление и DDL – Data Definition Language (язык описания данных)


Часть первая — habrahabr.ru/post/255361

DML – Data Manipulation Language (язык манипулирования данными)


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

Рассказывать про DML я буду по своей последовательности выработанной на личном опыте. По ходу, так же постараюсь рассказать про «скользкие» места, на которые стоит акцентировать внимание, эти «скользкие» места, схожи во многих диалектах языка SQL.

Т.к. учебник посвящается широкому кругу читателей (не только программистам), то и объяснение, порой будет соответствующее, т.е. долгое и нудное. Это мое видение материала, которое в основном получено на практике в результате профессиональной деятельности.

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

Т.к. DML в диалекте БД MS SQL очень сильно связан с синтаксисом конструкции SELECT, то я начну рассказывать о DML именно с нее. На мой взгляд конструкция SELECT является самой главной конструкцией языка DML, т.к. за счет нее или ее частей осуществляется выборка необходимых данных из БД.
Читать дальше →

Учебник по языку SQL (DDL, DML) на примере диалекта MS SQL Server. Часть первая

Время на прочтение29 мин
Количество просмотров862K

О чем данный учебник


Данный учебник представляет собой что-то типа «штампа моей памяти» по языку SQL (DDL, DML), т.е. это информация, которая накопилась по ходу профессиональной деятельности и постоянно хранится в моей голове. Это для меня достаточный минимум, который применяется при работе с базами данных наиболее часто. Если встает необходимость применять более полные конструкции SQL, то я обычно обращаюсь за помощью в библиотеку MSDN расположенную в интернет. На мой взгляд, удержать все в голове очень сложно, да и нет особой необходимости в этом. Но знать основные конструкции очень полезно, т.к. они применимы практически в таком же виде во многих реляционных базах данных, таких как Oracle, MySQL, Firebird. Отличия в основном состоят в типах данных, которые могут отличаться в деталях. Основных конструкций языка SQL не так много, и при постоянной практике они быстро запоминаются. Например, для создания объектов (таблиц, ограничений, индексов и т.п.) достаточно иметь под рукой текстовый редактор среды (IDE) для работы с базой данных, и нет надобности изучать визуальный инструментарий заточенный для работы с конкретным типом баз данных (MS SQL, Oracle, MySQL, Firebird, …). Это удобно и тем, что весь текст находится перед глазами, и не нужно бегать по многочисленным вкладкам для того чтобы создать, например, индекс или ограничение. При постоянной работе с базой данных, создать, изменить, а особенно пересоздать объект при помощи скриптов получается в разы быстрее, чем если это делать в визуальном режиме. Так же в скриптовом режиме (соответственно, при должной аккуратности), проще задавать и контролировать правила наименования объектов (мое субъективное мнение). К тому же скрипты удобно использовать в случае, когда изменения, делаемые в одной базе данных (например, тестовой), необходимо перенести в таком же виде в другую базу (продуктивную).
Читать дальше →

Установка SQL Server 2012 для SharePoint 2013

Время на прочтение4 мин
Количество просмотров29K
Данная инструкция предназначена для новичков, ищущих простое руководство на русском языке для установки английской версии SQL Server 2012, который будет далее использоваться для SharePoint 2013.
Эта статья не для профессионалов.

Вся работа разделена на 3 этапа:
  • Установка SQL Server 2012
  • Настройка параметра конфигурации сервера max degree of parallelism
  • Настройка прав учетной записи, предназначенной для установки SharePoint 2013

Также в статье описывается процесс установки Microsoft .NET Framework 3.5 в среде MS Windows Server 2012 R2 Standart.

Внимание: под катом много картинок!
Читать дальше →

Анализ корзины покупателя средствами MS Excel и MS SQL Server

Время на прочтение3 мин
Количество просмотров18K
image

Если вы работаете в сфере торговли, то наверняка задача анализа корзины покупателя (Shopping Basket Analysis) будет вам интересна. Говоря простыми словами, данная задача сводится к тому, чтобы определить какие товары чаще всего покупаются вместе с другими товарами. Обладая этой информацией можно без труда увеличить объемы продаж, сделав выкладку товара в соответствии с результатами анализа, или реализовать систему рекомендаций покупателю при продаже товара.
Читать дальше →

Опубликованы записи конференции: «IT Conference: Облако в России»

Время на прочтение1 мин
Количество просмотров2.8K
18 февраля 2015 года в Москве состоялась «IT Conference: Облако в России»



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

Записи уже доступны TechDays.ru.

А еще всего несколько дней осталось до завершения конкурса Microsoft Airlines. У вас есть шанс выиграть авиабилет. В конкурсе всего 2 условия: посмотреть бесплатный курс и зарегистрировать новый аккаунт Azure.

Подробнее про конкурс можно прочитать здесь. Торопитесь — конкурс заканчивается 15 марта!

Ближайшие события

Entity Framework: повышаем производительность при сохранении данных в БД

Время на прочтение10 мин
Количество просмотров55K
При добавлении/изменении большого количества записей (10³ и выше), производительность Entity Framework оставляет желать лучшего. Причиной этому являются как архитектурные особенности самого фреймворка, так и неоптимальный генерируемый SQL. Забегая вперед — сохранение данных в обход контекста сокращает время выполнения на порядки.

Содержание статьи:
1. Insert/Update стандартными средствами Entity Framework
2. Поиск решения проблемы
3. Интеграция Entity Framework и SqlBulkCopy
4. Продвинутая вставка с использованием MERGE
5. Сравнение производительности
6. Выводы
Читать дальше →

Опыт решения проблемы созданием OLAP-куба, используя С#

Время на прочтение3 мин
Количество просмотров13K

Предыстория


Хотел бы поделиться своим небольшим опытом, который я приобрел на работе в одном государственном учреждении. Как я туда попал — не важно, но это важно знать, т.к. это налагает свою специфику на условия, в которых приходилось решать поставленную задачу. Стоит так же отметить, что основные мои знания и скудный опыт в программировании относятся к .Net технологиям.

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

image
Читать дальше →

Онлайн-трансляция IT Conference: Облако в России – 18 февраля в 10:00 (МСК)

Время на прочтение2 мин
Количество просмотров2.9K
Всем доброго времени суток!
Уже завтра, 18 февраля 2015 года в Москве на площадке Digital October будет проходить крупнейшая технологическая конференция Microsoft – IT Conference: Облако в России. Участники смогут выбрать между четырьмя технологическими треками: модернизация локальной ИТ-инфраструктуры, применение гибридной ИТ-инфраструктуры, расширение мобильности предприятия, платформа бизнес-анализа и управления данными. Для тех, кто не сможет лично присутствовать на мероприятии, будет проводиться онлайн-трансляция, ссылка на которую размещена под катом. Начало в 10:00 (МСК).

image


Ссылка на онлайн-трансляцию здесь

Поговорим об облаках?

Время на прочтение1 мин
Количество просмотров3.4K
PayOnline приглашает «летчиков высшего класса» на технологическую конференцию IT Conference: Облако в России. Мероприятие проводит Microsoft. До конца регистрации осталось меньше двух недель… Поехали!



Получить промо-код от PayOnline

Максимально эффективная по скорости работы — серверная схема, для клиент-серверной 1С 8.х

Время на прочтение4 мин
Количество просмотров131K
Предисловие

Постоянно сталкивался с высказываниями ИТ специалистов «сеть нагружена на 20%… процессоры на 50%… очередей к дискам мало… Значит сеть и сервера справляются… смотрите код в 1С проблемы исключительно там».

На самом деле происходило следующее ( сервер 1С и SQL разнесены на разные компьютеры): сеть практически использовалась по максимуму(эти "20% загрузки сетевого интерфейса" = «20% полезные данные» + «80% потеря на служебной обработке»). И соответственно из-за малой ширины канала обмена «полезными» данными — SQL сервер с «Сервером 1С» постоянно ожидали друг друга, что вело к малой утилизации ресурсов CPU и дисковой системы.
Читать дальше →

Как написать быструю систему скриптования и развертывания базы данных

Время на прочтение6 мин
Количество просмотров12K

Часть первая, историческая


Сейчас историки пытаются преподнести,
что в тысяча пятьсот каком-то году
что-то там было.
Да не было ничего!
В. С. Черномырдин


Итак, все началось в далеком 2006 году, когда я попал в it-компанию, которая занималась разработкой решений в области телекоммуникаций. Наша команда разрабатывала приложение на C#, которое получало некоторые данные из базы данных MS Sql Server, обрабатывало их и складывало обратно. Сначала в нашей базе было около 10 таблиц и пара хранимых процедур. Со временем число таблиц и других объектов стало расти. Мы начали задумываться, как управлять этими объектами. Скрипты мы хранили в системе контроля версий.
Читать дальше →

Вопросы про индексы, которые вам не надо будет задавать

Время на прочтение11 мин
Количество просмотров47K


После ответов на 14 вопросов об индексах, которые вы стеснялись задать, у меня возникло гораздо больше комментариев, уточнений и исправлений. Скомпилировать из всего этого статью выглядело затеей с минимумом пользы. И это заставило меня призадумался, а почему вообще мы должны «стесняться задавать» подобные вопросы? Стыдно не знать? А есть ли способ разобраться, не вгоняя себя в краску? Есть. Причем он избавит от многочисленных неточностей, которыми изобилуют многие «ответы». Вы будете чувствовать буквально каждый байт вашей базы кончиками своих пальцев.

Для этого, я предлагаю «поднять капот» у SQL Server и окунуться в сладостный мир шестнадцатеричных дампов. Может статься, что внутри все гораздо проще, чем вам казалось.
Читать дальше →