Skip to content

Примеры функций SQL Server для работы с файлами JSON

Пересказ статьи Rick Dobson. SQL Server Function Examples with JSON Files


Заметна растущая популярность контента JSON для обмена данными в интернете, а также для легкого способа хранения журналов и данных измерений. В то же время растет функциональность SQL Server в плане поддержки, хранения и обработки данных JSON. Возникла необходимость дать несколько примеров функций SQL Server, которые иллюстрируют поддержку, хранение и обработку файлов с JSON-контентом. Продолжить чтение "Примеры функций SQL Server для работы с файлами JSON"
Категории: T-SQL

Покрывающие индексы SQL Server с ключевыми и неключевыми столбцами для повышения производительности

Пересказ статьи Jared Westover. SQL Server Indexes with Key and Non-Key Columns as Covering Indexes to improve Performance


Когда я начинал создавать индексы в SQL Server, я добавлял столбцы только в ключ. Даже если зеленая полезная подсказка предлагала обратное. Это было так давно, что я уже не помню, где я впервые прочитал о размещении столбцов во включенной или неключевой части. Однако как-то я приспособился. Почему вы должны размещать столбцы в ключе, а не в ключевой области при создании индекса? Имеет ли это значение? Вот несколько вопросов, которые мы исследуем вместе с вами.


В этом руководстве я начну с определения понятия покрывающего индекса в SQL Server. Затем мы рассмотрим, как SQL Server хранит неключевые столбцы в структуре индекса. Мы узнаем о двух главных преимуществах добавления столбцов во включенную часть индекса. Это не все преимущества, но с этими двумя имеют дело наиболее часто. К концу руководства вы сможете уже сейчас начать создавать лучшие индексы.


Продолжить чтение "Покрывающие индексы SQL Server с ключевыми и неключевыми столбцами для повышения производительности"

Типы индексов в PostgreSQL: изучаем PostgreSQL вместе с Grant Fritchey

Пересказ статьи Grant Fritchey. Index Types in PostgreSQL: Learning PostgreSQL with Grant


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

В этой статье я собираюсь пройтись по индексам различных типов и поведению некоторых индексов. Мы узнаем, что такое индексы, как они работают и как наилучшим образом применять их в ваших базах данных. Я надеюсь, что вы разовьете понимание того, какие индексы будут работать лучше в той или иной ситуации.
Продолжить чтение "Типы индексов в PostgreSQL: изучаем PostgreSQL вместе с Grant Fritchey"

Основы PostgreSQL: роли и привилегии

Пересказ статьи Ryan Booz. PostgreSQL Basics: Roles and Privileges


Информационная безопасность, касается ли это баз данных, приложений или больших ИТ-систем, основана на принципах аутентификации (Authentication) и авторизации (Authorization), которые часто именуют как AuthN и AuthZ соответственно.

Безопасность в PostgreSQL также включает создание ролей, которые разрешают доступ к ресурсам сервера (AuthN) с последующим предоставлением соответствующих привилегий на объекты базы данных (AuthZ). Понимание того, как каждый из этих компонентов работает совместно с другими, является существенным для эффективного управления безопасностью на кластере PostgreSQL. Продолжить чтение "Основы PostgreSQL: роли и привилегии"

Введение в общие табличные выражения MySQL

Пересказ статьи Robert Sheldon. Introducing the MySQL common table expression


Как и во многих реляционных системах управления базами данных, MySQL предлагает разнообразные методы комбинирования данных в операторах языка манипуляции данными (DML). Вы можете соединять несколько таблиц в одном запросе или добавлять подзапросы, которые извлекают данные из других таблиц. Вы можете также обращаться к представлениям и временным таблицам из оператора наряду с постоянными таблицами.

MySQL предлагает также другой ценный инструмент для работы с данными - общие табличные выражения (CTE). CTE - это именованный результирующий набор, который вы определяете в предложении WITH. Предложение WITH связано с единственным оператором DML, но создается вне этого оператора. Однако только этот оператор может иметь доступ к результирующему набору. Продолжить чтение "Введение в общие табличные выражения MySQL"
Категории: MySQL

Восстановление на момент времени в SQL Server

Пересказ статьи Greg Robidoux. SQL Server point in time recovery


В какой-то момент вредоносная команда может быть выполнена на одной из ваших баз данных, и вам потребуется восстановить потерянные данные. Имеется несколько вариантов действий, которые могут восстановить потерянные данные, но какой из них сделает это лучшим образом? Одним из вариантов, которые предлагает SQL Server, является возможность восстановление ваших данных на заданный момент времени, для того чтобы восстановить вашу базу к состоянию, непосредственно предшествовавшему выполнению вредоносной команды. Итак, какие шаги следует предпринять для восстановления на момент времени? Продолжить чтение "Восстановление на момент времени в SQL Server"
Категории: T-SQL

3 способа отладки кода T-SQL

Пересказ статьи Brent Ozar. 3 Ways to Debug T-SQL Code


Написание нового кода = создание багов. Это легко.

Устранение этих багов - трудное дело.

Разработчики привыкли к тому, что их инструменты имеют встроенные механизмы, показывающие, какая строка кода выполняется в данный момент, выводящие текущие значения переменных, сообщения о ходе выполнения и т.д. К слову, SQL Server Management Studio также имела отладчик, но он исчез из SSMS v18 и последующих версий. Но даже когда он имелся, я не был его большим фанатом: SQL Server буквально прекращал работу, пока выполнял ваш запрос. Это было катастрофой, если ваш запрос удерживал блокировки, которые останавливали запросы других пользователей, и вы даже знали людей, которые использовали его в продакшене. Продолжить чтение "3 способа отладки кода T-SQL"
Категории: T-SQL

Создание схемы SQL для организации объектов базы данных, предоставления разрешений и упрощения обслуживания

Пересказ статьи Joe Gavin. SQL Create Schema to Organize Database Objects, Assign Permissions and Easier Management


При создании объектов или доступа к ним в SQL Server вы можете также указывать имя схемы объекта. Что такое схема, и как она используется в Microsoft SQL Server?

Здесь мы вкратце сделаем обзор истории схем, рассмотрим определение схемы, встроенные схемы, причины использования схем, а также примеры создания схем и присвоения им разрешений. Продолжить чтение "Создание схемы SQL для организации объектов базы данных, предоставления разрешений и упрощения обслуживания"
Категории: T-SQL

Как найти недостающие строки в таблице

Пересказ статьи Brent Ozar. How to Find Missing Rows in a Table


Когда кто-то говорит: "Найдите все строки, которые был удалены", - это много проще сделать, когда таблица имеет столбец identity (id). Давайте возьмем таблицу Users в базе данных Stack Overflow:

Продолжить чтение "Как найти недостающие строки в таблице"
Категории: T-SQL