Запитання з тегом «sql-server»

Усі версії Microsoft SQL Server (не MySQL). Будь ласка, додайте тег, що залежить від версії, як-от sql-server-2016, оскільки це часто стосується питання.

2
Індекс стовпців стовпців у групі файлів read_only заважає CheckDB
Здається, встановлення групи файлів read_onlyзапобігає dbcc checkdbдля всієї бази даних, якщо група файлів містить індекс стовпців стовпців. При спробі запуску checkdbабо checkfilegroup( для будь-якої групи файлів у базі даних, включаючи вторинники для читання і запису[PRIMARY] ), повертається нижче помилка ... Msg 8921, Level 16, State 1, Line 24 Check terminated. …

3
SQL Server: Як відключити тригер для оновлення лише для вашого поточного сеансу?
Я працюю над SQL Server 2008 R2. У мене є таблична вигода, яка має ПІСЛЯ ВСТАВИТИ, ОНОВЛЕННЯ тригера під назвою tiu_benefit . Я хочу написати операцію UPDATE для цієї таблиці, щоб оновити 1 рядок, але я не хочу, щоб його тригер спрацював. Я знаю, що можу вимкнути тригер перед UPDATE, …

2
Як знайти запит, який все ще містить замок?
Запит sys.dm_tran_locksDMV показує, які сеанси (SPID) містять блокування на таких ресурсах, як таблиця, сторінка та рядок. Чи існує спосіб придбання блокування для кожного придбаного блокування? Я знаю, що most_recent_query_handleстовпець sys.dm_exec_connectionsDMV дає нам текст останнього виконаного запиту, але кілька разів інші запити виконувались раніше за той же сеанс (SPID) і все …

1
Чому COALESCE в підзапиті повертає NULL?
З огляду на цю схему: CREATE TABLE #TEST_COALESCE ( Id int NOT NULL, DateTest datetime NOT NULL, PRIMARY KEY (Id, DateTest) ); INSERT INTO #TEST_COALESCE VALUES (1, '20170201'), (1, '20170202'), (1, '20170203'), (2, '20170204'), (2, '20170205'), (2, '20170206'); Якщо я використовую COALESCE в підзапиті, він повертає NULL. SELECT t1.Id, t1.DateTest, …
15 sql-server 

6
Запит із деталізацією відмінностей між рядками для великого обсягу даних
У мене є ряд великих таблиць, кожна з яких> 300 стовпців. Додаток, який я використовую, створює "архіви" змінених рядків, роблячи копію поточного рядка у вторинній таблиці. Розглянемо тривіальний приклад: CREATE TABLE dbo.bigtable ( UpdateDate datetime, PK varchar(12) PRIMARY KEY, col1 varchar(100), col2 int, col3 varchar(20), . . . colN datetime …

2
Як перевірити наявність персонажів, які не належать до Ассії
Який найкращий спосіб перевірити, чи є в полі VARCHAR символи Non-Ascii? CHAR(1)через CHAR(31)та CHAR(127)через CHAR(255). Я спробував використати PATINDEXі натрапив на наступну проблему. Перевірка нижнього діапазону працювала правильно. SELECT * FROM mbrnotes WHERE PATINDEX('%[' + CHAR(1)+ '-' +CHAR(31)+']%',LINE_TEXT) > 0 У моїх даних було три записи з 0x1E і всі …

2
Як можна видалити SQL, використовуючи підзапит
Наступний код додав один з наших розробників для видалення дублікатів записів із таблиці: DELETE SubQuery FROM ( SELECT ID ,FK1 ,FK2 ,CreatedDateTime ,ROW_NUMBER() OVER(PARTITION BY FK1, FK2 ORDER BY CreatedDateTime) AS RowNumber FROM Table ) AS SubQuery WHERE RowNumber > 1 Переглядаючи код, я припускав, що він не працюватиме, проте …

1
План виконання з декількома відсутніми індексами
Якщо ви запустите запит із "Включити фактичний план виконання", план також запропонує індекси, яких немає. Деталі індексу знаходяться всередині MissingIndexesтегу в XML. Чи існує ситуація, коли план включає кілька пропозицій щодо індексів? Я пробував різні запити sql, але не міг придумати жоден запит, який генерує два чи більше відсутніх індексів.

2
Чи можна системні таблиці SQL Server дефрагментувати?
У нас є кілька баз даних, в яких створюється і випадає велика кількість таблиць. З того, що ми можемо сказати, SQL Server не проводить жодного внутрішнього обслуговування системних базових таблиць , це означає, що вони можуть з часом сильно роздроблені та роздуватися. Це надає зайвий тиск на буферний пул, а …

2
Новіша версія SQL Server менш стабільна?
Наш архітектор бази даних повідомив клієнту нашого, що SQL Server 2014 - це поганий вибір у порівнянні з 2012 роком, оскільки йому не вистачає переваг щодо продуктивності та стабільності у 2012 році. Все, що я читав, суперечить цьому. Аарон Бертран говорить з точністю до навпаки, і всі доповіді, які я …

1
Метрики, які підтверджують або спростовують потребу в додаткових доменних запитах?
Наразі у нас є два учасники DBA, я та один хлопець, і ми обидва відчуваємо потребу в додатковому ресурсі (або двох). Я розмовляв із моїм прямим керівником на цю тему кілька разів, але у мене виникли труднощі з продажем поняття. Зовсім недавно наш менеджер поділився з нами тим, що дійсно …

3
Чому мій запит EXISTS виконує сканування індексу замість індексу?
Я працюю над оптимізацією деяких запитів. Для запиту нижче: SET STATISTICS IO ON; DECLARE @OrderStartDate DATETIME2 = '27 feb 2016'; DECLARE @OrderEndDate DATETIME2 = '28 feb 2016'; SELECT o.strBxOrderNo , o.sintOrderStatusID , o.sintOrderChannelID , o.sintOrderTypeID , o.sdtmOrdCreated , o.sintMarketID , o.strOrderKey , o.strOfferCode , o.strCurrencyCode , o.decBCShipFullPrice , o.decBCShipFinal , …

3
Резервні копії журналу транзакцій послідовні чи паралельні?
Ми, звичайно, використовуємо SQL Server 2012 Standard Edition. Мені трапляється також використовувати сценарії Ola Hallengren, щоб забезпечити просту, більш гнучку рамку для створення резервних копій та обслуговування. Це питання не стільки стосується сценаріїв Оли, скільки про кращу практику. Я усвідомлюю, що остаточна відповідь - це "залежить від вимог вашої компанії". …

3
База даних, що зберігається, у режимі попереднього перегляду
Досить поширеною схемою в застосуванні бази даних, з якою я працюю, є необхідність створення збереженої процедури для звіту або утиліти, яка має "режим попереднього перегляду". Коли така процедура робить оновлення, цей параметр вказує на те, що результати дії повинні бути повернуті, але процедура фактично не повинна виконувати оновлення бази даних. …
15 sql-server  t-sql 

1
SQL Server 2014 COUNT (DISTINCT x) ігнорує вектор щільності статистики для стовпця x
Для того, COUNT(DISTINCT)що має ~ 1 мільярд чітких значень, я отримую план запитів із хеш-сукупністю, за оцінками, лише ~ 3 мільйони рядків. Чому це відбувається? SQL Server 2012 дає хорошу оцінку, тож це помилка в SQL Server 2014, про яку я повинен повідомити про підключення? Запит та погана оцінка -- …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.