Книга Энтони Молинаро «SQL. Сборник рецептов» предназначена тем, кто уже знаком с основами языка запросов SQL и хочет повысить свой профессиональ! ный уровень. Она будет полезна и экспертам SQL, поскольку автор предлагает варианты решения задач для разных СУБД: DB2, Oracle, PostgreSQL, MySQL и SQL Server. Если вы постоянно работаете с SQL на одной платформе, то, воз! можно, найдете в рецептах более эффективное решение на другой. Вы научи! тесь использовать SQL для решения более широкого спектра задач – от опера! ций внутри баз данных до передачи данных по сети в приложения. Для этого достаточно открыть книгу на странице с интересующим вас рецептом.
Описание : в этой статье вы узнаете, как использовать комментарий MySQL для документирования оператора SQL или блока кода в MySQL.
Комментарии
Комментарии могут использоваться для документирования назначения оператора SQL или логики блока кода в хранимой процедуре. При разборе кода SQL, MySQL игнорирует часть комментариев. Он выполняет только часть SQL, за исключением исполняемого комментария, который мы обсудим в следующем разделе. Читать →
Понадобилось тут при переходе на новую систему сравнить данные справочников с архивной системой.
Для этих целей отлично пригодилась утилита Tablediff , главное требование чтобы таблицы имели одинаковую структуру и содержали первичный ключ либо столбец идентификатора identity, rowguid или уникальный ключ.
Плюс этой утилиты в том что можно легко сравнивать таблицы с разных серверов и конечно же есть возможность привести таблицы к единому виду добавив всего лишь один параметр -f и получить необходимый скрипт .
Если таблицы не совпадают по структуре проще написать свой запрос для сравнения используя связанные серверы и команды INTESECT и EXCEPT или создать представления и сравнить их. Читать →
В ситуации когда пользователь должен видеть только определенные данные из таблицы или не хочется заморачиваться с правами на таблицу
пригодится использование механизма цепочек владения.
Если кратко то в случае когда объектами владеет один и тот же владелец то включается механизм цепочки владения который позволяет исключить проверку прав для входящих в процедуру или представление объектов.
Например хотим создать отдельную схему и дать доступ пользователю только на объекты данной схемы. Подробнее можно почитать тут
Создаем схему указываем владельца dbo, т.к будем использовать в представлениях и процедурах объекты данной схемы, таким образом включается цепочка наследования.
! Необходимо указать правильного владельца сразу иначе цепочка оборвется и придется пересоздавать схему.
CREATESCHEMA[MDM] AUTHORIZATION[dbo]
Далее создаем представление, которое использует например таблице TESTв схеме dbo
CREATEVIEWMDM.TESTVIEWAS
SELECT*
FROMdbo.TEST
Даем права нашему пользователю на селект и грант, без гранта работать не будет.