Бесплатный инструмент настройки SQL: How My Database?

 Это заняло больше времени, чем я думал, и я столкнулся с несколькими проблемами на этом пути, но несколько человек в сообществе MVP качели некоторые homeruns, чтобы помочь мне завершить бета-версию этого нового инструмента настройки запросов сообщества SQL Server.

Что такое “How My Database?” Я бы сказал, что это то, что должно было быть написано давным-давно. Настройка запросов-это сложная задача, и для того, чтобы стать хорошим специалистом, может потребоваться много практики. Я надеюсь, что этот инструмент поможет сообществу легче настроить свои запросы, повысить осведомленность о некоторых проблемах и обучить тех, кто только начинает работать.

Вы можете найти этот инструмент в магазине приложений Windows 10. Просто найдите “How My Database".


How's My Database - это простое универсальное приложение для Windows (UWP). Microsoft не включила систему.ДАННЫЕ.SQLCLIENT в UWP до недавнего времени с выпуском .NET STANDARD 2.0. С тех пор они добавили достаточно функций, чтобы позволить мне создать этот инструмент. Я также включил элемент управления Syncfusion treegrid, чтобы помочь в отображении плана запроса. Я также хотел бы поблагодарить ComponentOne за то, что он одолжил мне некоторые инструменты для этого проекта; однако в конечном итоге я не использовал ни одного из них.

Я был бы очень рад, если бы Microsoft смогла добавить систему.ДИАГНОСТИКА.PERFORMANCECOUNTER для приложений UWP, чтобы я действительно мог написать приложение проверки работоспособности или миграции, о котором всегда мечтал. К сожалению, я не думаю, что это есть на какой-либо дорожной карте.

UWP ограничен локальным доступом к сети, и спасибо Лансу Маккарти из Telerik за помощь в обходном пути для доступа к локальным экземплярам SQL из этого инструмента. Вам просто нужно захватить утилиту Loopback для Windows 8 AppContainer и использовать ее для разблокировки любого приложения UWP.

Без этого инструмента вы не сможете подключиться к экземпляру SQL на локальном компьютере.


Так в чем же может помочь этот инструмент? Очень много всего.

Например, сообщение "проблемы с IN", которое я написал когда-то назад (спасибо Джо Саку за то, что он научил меня этому).


Он также может определить разницу между сканированием, принудительным с помощью UDF или скалярной функции.

function in predicate

На самом деле есть около 40 вещей, которые он проверяет.

Текущие ограничения заключаются в том, что запросы с курсором или временной таблицей не анализируются. Существует также ошибка, когда отсутствующие индексы и предупреждения появляются на неправильном узле / операторе. Поскольку в данный момент инструмент использует расчетные планы, он может быть не таким точным.

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

Пожалуйста, имейте в виду, что это бета-инструмент, и это также бесплатно.