Skip to content

Обработка неявного преобразования

Пересказ статьи Chad Callihan. Handling Implicit Conversion


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

SQL ORDER BY: 5 правил сортировки на профессиональном уровне

Пересказ статьи Edwin Sanchez. SQL ORDER BY The 5 Do’s and Don’ts to Sort Data Like a Pro


Уродливо. Так выглядят неупорядоченные данные. Данные легче воспринимаются зрительно, если они отсортированы. Для этого и служит SQL ORDER BY. Используйте один или несколько столбцов или выражений, на основании которых должны сортироваться данные. Затем добавьте ASC или DESC для сортировки по возрастанию или убыванию.
Продолжить чтение "SQL ORDER BY: 5 правил сортировки на профессиональном уровне"

Оператор SQL Server RAISERROR на простых примерах

Пересказ статьи Nisarg Upadhyay. SQL Server RAISERROR Statement with Simple Examples


Оператор RAISERROR используется для посылки подготовленного сообщения в клиентское приложение. Он также может использоваться для отладки приложения и применения механизма обработки ошибок.

Синтаксис и параметры оператора SQL RAISERROR


Оператор SQL RAISERROR имеет следующий синтаксис:

RAISERROR ( { message_text | message_id | @local_variable }
{ ,severity ,state }
[ ,argument [ ,...n ] ]
[ WITH option [ ,...n ] ];


Ниже описание ключевых параметров RAISERROR, которые вы можете задать:
Продолжить чтение "Оператор SQL Server RAISERROR на простых примерах"
Категории: T-SQL

Еще о выборе и порядке столбцов многостолбцовых некластеризованных индексов

Пересказ статьи Mike Byrd. More on Column Choice and Order for Multi-column Non-Clustered Indexes


В прошлом году я публиковал статьи по индексам, в частности, "Индексы: когда селективность столбца не является обязательным требованием" и "Оптимизатор запросов предлагает неправильный индекс и план запроса - почему?". Эта статья является просто продолжением темы взаимодействия оптимизатора с мастером индексов. Продолжить чтение "Еще о выборе и порядке столбцов многостолбцовых некластеризованных индексов"

Импорт CSV в SQL Server не должен быть таким сложным

Пересказ статьи Steve Jones. Importing a CSV into SQL Server Shouldn't Be This Hard


Как и многим из вас, недавно мне потребовалось импортировать некоторые данные в формате CSV (файл с разделителями-запятыми) в SQL Server. Это не был новый процесс, или приложение, которое требовало улучшения, и даже не необходимость в построении процесса ETL (извлечь, преобразовать, загрузить). Это был отдельный полуразовый запрос. С запросами подобного типа из разных источников я сталкивался годами. Администратор ли вы баз данных или разработчик, получив некие данные, вам хочется, чтобы они были очищены и представлены в структурированном формате, чтобы можно было легко создать отчет или проанализировать информацию.

Продолжить чтение "Импорт CSV в SQL Server не должен быть таким сложным"
Категории: T-SQL

Почему плохо использовать выражения CASE в предложении WHERE

Пересказ статьи Erik Darling. Why CASE Expressions Are Bad In The Where Clause



Выключить и включить


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

Очевидно, что это также распространяется и на предложения соединения. Выражение CASE там имеет столько же шансов вызвать проблемы производительности.

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

TRY_CAST и TRY_PARSE могут возвращать разные результаты

Пересказ статьи Joe Obbish. TRY_CAST and TRY_PARSE Can Return Different Results


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

Продолжить чтение "TRY_CAST и TRY_PARSE могут возвращать разные результаты"
Категории: T-SQL

Новости за 2022-01-29 - 2022-02-04

§ Новости сайта и блога вы можете теперь читать в telegram-канале SQL-Ex.


§ На сервере сайта планируются технические работы. Начало работ 22:00 в субботу. Об окончании работ будет сообщено в нашем Телеграм-канале (ссылка на канал в сообщении выше).


Продолжить чтение "Новости за 2022-01-29 - 2022-02-04"

Как перевести базу данных SQL Server в состояние Recovery Pending

Пересказ статьи John Morehouse. How to put a SQL Server Database into Recovery Pending


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