Вопросы с тегом «sql-server»

21
Откуда происходят это постоянное сканирование и левое внешнее соединение в тривиальном плане запроса SELECT?

У меня есть эта таблица: CREATE TABLE [dbo].[Accounts] ( [AccountId] UNIQUEIDENTIFIER UNIQUE NOT NULL DEFAULT NEWID(), -- WHATEVER other columns ); GO CREATE UNIQUE CLUSTERED INDEX [AccountsIndex] ON [dbo].[Accounts]([AccountId] ASC); GO Этот запрос: DECLARE @result UNIQUEIDENTIFIER SELECT @result...

21
Почему это явное приведение вызывает проблемы только со связанным сервером?

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

21
Почему поиск LIKE N '% %' соответствует любому символу Юникода, а = N' 'соответствует многим?

DECLARE @T TABLE( Col NCHAR(1)); INSERT INTO @T VALUES (N'A'), (N'B'), (N'C'), (N'Ƕ'), (N'Ƿ'), (N'Ǹ'); SELECT * FROM @T WHERE Col LIKE N'%�%' Возвращает Col A B C Ƕ Ƿ Ǹ SELECT * FROM @T WHERE Col = N'�' Возвращает Col Ƕ Ƿ Ǹ Генерация каждого возможного двухбайтового «символа» с помощью приведенного...

21
Ключи хеша пробные и остаточные

Скажем, у нас есть такой запрос: select a.*,b.* from a join b on a.col1=b.col1 and len(a.col1)=10 Предполагая, что вышеупомянутый запрос использует Hash Join и имеет остаток, ключ пробника будет col1и остаток будет len(a.col1)=10. Но, просматривая другой пример, я мог видеть и зонд, и остаток как...

21
varchar (255) или varchar (256)?

Должен ли я использовать varchar(255)или varchar(256)при разработке таблиц? Я слышал, один байт используется для длины столбца или для хранения метаданных. Имеет ли это значение в данный момент? Я видел некоторые посты в интернете, однако они относятся к Oracle и MySQL. У нас есть Microsoft SQL...

21
Почему BULK INSERT считается опасным?

Этот вопрос был перенесен из Exchange Stack Exchange, поскольку на него можно ответить в Exchange Stack Exchange. Мигрировал 2 года назад . Я хотел бы понять, почему группы по кибербезопасности в целом (более чем с одной организацией, с которой я имел дело) не могут предоставить BULK...

21
Внедрение SQL Server - какой урон наносится в 26 символов?

Я тестирую на устойчивость к внедрению атак на базу данных SQL Server. Все имена таблиц в БД строчные, а в сопоставлении учитывается регистр символов Latin1_General_CS_AS . Строка, которую я могу отправить, указывается в верхнем регистре и может содержать не более 26 символов. Поэтому я не могу...

21
По-прежнему рекомендуется избегать использования портов по умолчанию для SQL Server?

Исторически было рекомендовано не использовать порты по умолчанию для соединений с SQL Server, как часть рекомендаций по безопасности. На сервере с одним экземпляром по умолчанию следующие порты будут использоваться по умолчанию: Служба SQL Server - порт 1433 (TCP) Служба браузера SQL Server - порт...

21
В SQL Server, почему обратное сканирование кластерного индекса не может использовать параллелизм?

Я читал о внутренностях SQL Server, и каждая книга или блог упоминают об обратном сканировании. Обратное сканирование кластерного индекса не может использовать параллелизм Единственный пост, который сказал что-то, это ниже. В сообщении говорится, что команда SQL Server не реализовала необходимые...

20
Какой запрос лучше всего использовать для мониторинга состояния базы данных SQL Server?

Я хочу иметь возможность выполнить запрос, чтобы получить важную информацию о состоянии базы данных. Т.е. я хочу, чтобы запрос мог определить, находится ли база данных в хорошем состоянии. Это запрос, который я унаследовал для этой проверки: SELECT name AS [SuspectDB], DATABASEPROPERTY(name,...

20
Восстановление журнала транзакций

У нас очень большая база данных (~ 6 ТБ), файл журнала транзакций которой был удален (когда SQL Server был закрыт. Мы попытались: Отсоединение и повторное подключение базы данных; и Удаление файла журнала транзакций ... но пока ничего не получалось. В настоящее время мы работаем: ALTER DATABASE...

20
Как получить максимальный ряд

В SQL Server мне всегда было трудно получить максимальное количество строк для набора данных. Я ищу список методов для получения максимального количества строк с некоторыми рекомендациями по производительности и удобству обслуживания. Образец таблицы: DECLARE @Test TABLE (ID INT IDENTITY(1,1), name...

20
Когда следует использовать расширенные события вместо SQL Profiler / perfmon?

Расширенные события выглядят как лучшая технология и меньшая нагрузка на сервер, но SQL Profiler / perfmon имеет лучшие инструменты. Кроме того, расширенные события, кажется, имеют более крутой кривой обучения. В каком контексте каждый из них должен использоваться? Стоит ли проходить крутой курс...

20
Почему NULL сортируются первыми?

Почему при наличии значения NULL в столбце и упорядочении по возрастанию значения NULL сортируются первыми? select 1 as test union all select 2 union all select NULL union all select 3 union all select 4 order by test результаты в NULL 1 2 3 4 Я продолжаю думать, что NULL означает «неопределенный»...

20
Использование IF в T-SQL ослабляет или нарушает кэширование плана выполнения?

Мне было предложено, чтобы использование операторов IF в пакетах t-SQL отрицательно сказывалось на производительности. Я пытаюсь найти подтверждение или подтвердить это утверждение. Я использую SQL Server 2005 и 2008. Утверждение таково со следующей партией: IF @parameter = 0 BEGIN SELECT ......

20
Какова анатомия индекса columnstore?

Одна из новых функций в SQL Server 2012 под кодовым названием Denali- индекс Columnstore. Я хорошо знаком с обычными старыми индексами хранилища строк, такими как структура b-дерева, различия в хранении между листовым уровнем и страницами b-дерева, влияние включенных полей, оптимизация их...

20
Почему IDENTITY_INSERT ON допускается только для одной таблицы за раз?

Это тот случай, когда IDENTITY_INSERT может быть установлен только на ON в одной таблице базы данных одновременно, но почему? Поскольку IDENTITYстолбцы не являются глобально уникальными, я не могу вспомнить ни о какой опасной ситуации, которая могла бы быть вызвана вставкой идентификаторов в...

20
Действительно ли битовый столбец SQL Server использует пространство в байтах?

Я копался в SSMS и заметил, что «размер» моих INTстолбцов составлял 4 байта (ожидаемый), но я был немного шокирован, увидев, что мои BITстолбцы были целым байтом. Я неправильно понял то, на что я...

20
Можете ли вы объяснить этот план выполнения?

Я исследовал что-то еще, когда наткнулся на эту вещь. Я генерировал тестовые таблицы с некоторыми данными и выполнял разные запросы, чтобы выяснить, как разные способы написания запросов влияют на план выполнения. Вот скрипт, который я использовал для генерации случайных тестовых данных: IF EXISTS...