Skip to content

Использование триггера INSTEAD OF для обновления представления

Пересказ статьи Chad Callihan. Using INSTEAD OF Trigger to Update View


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


Msg 4405, Level 16, State 1, Line 19
View or function ‘XXXXX’ is not updatable because the modification affects multiple base tables.

(Представление или функция не является обновляемым, поскольку модификация затрагивает несколько базовых таблиц.)


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

Сравнение оператора Create Table в SQL Server и Oracle

Пересказ статьи Pablo Echeverria. SQL Server and Oracle Create Table Comparison


Если вы работаете с базами данных, то, вероятно, уже знаете как создать таблицу, определить столбцы, указать типы данных, добавить первичный ключ, внешние ключи и ограничения. Помимо стандартных таблиц и столбцов что другое возможно для таблиц в SQL Server и Oracle? Продолжить чтение "Сравнение оператора Create Table в SQL Server и Oracle"

Простая параметризация и тривиальные планы - часть 1

Пересказ статьи Paul White. Simple Parameterization and Trivial Plans — Part 1


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

Несмотря на слова "простая" и "тривиальные", обе имеют тонкое поведение и детали реализации, которые могут сделать трудным для понимания то, как они работают. Эта серия не ограничивается основами, а концентрируется на менее известных аспектах, которые могут поставить в тупик даже самых опытных специалистов по базам данных. Продолжить чтение "Простая параметризация и тривиальные планы - часть 1"

Переменные SQL в скриптах, функциях, хранимых процедурах, SQLCMD и т.д.

Пересказ статьи Daniel Calbimonte. SQL Variables in Scripts, Functions, Stored Procedures, SQLCMD and More


Как и в любых языках разработки, использование переменных для хранения значений переменных в коде также весьма полезно при работе с СУБД Microsoft SQL Server. Здесь мы рассмотрим различные способы использования переменных при написании кода T-SQL, использовании SSIS, скриптов и т.п.
Мы рассмотрим следующие вопросы, относящиеся к переменным Transact-SQL в SQL Server:

  • Что такое переменные?

  • Что такое типы переменных?

  • Как объявить переменную?

  • Как установить переменную?

  • Зачем использовать переменные?

  • Как использовать переменные в хранимых процедурах?

  • Как использовать переменные в функциях?

  • Как использовать переменные с SQLCMD?

  • Как использовать переменные в скриптах?

  • Как использовать переменные с SSIS?

Продолжить чтение "Переменные SQL в скриптах, функциях, хранимых процедурах, SQLCMD и т.д."
Категории: T-SQL

Пример триггера в SQL Server

Пересказ статьи Daniel Farina. SQL Server Trigger Example


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

Заполнение столбца SQL Server последовательным номерами без использования identity

Пересказ статьи Greg Robidoux. Populate a SQL Server column with a sequential number not using an identity


Проблема


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