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

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

4
Що краще для великих змін таблиці: ВИДАЛИТИ та ВСТАВИТИ щоразу або ОНОВЛЕННЯ наявних?
Я роблю проект, де мені потрібно щодня змінювати записи в 36K в одній таблиці. Мені цікаво, що буде краще: видалити рядки та вставити нові, або оновити вже наявні рядки Для мене простіше просто видалити всі рядки та вставити нові, але якщо це буде фрагментувати таблицю та індекси та ефективність впливу, …

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

1
Логічне зчитування відрізняється під час доступу до одних і тих же даних LOB
Ось три прості тести, які читають однакові дані, але повідомляють про дуже різні логічні зчитування: Налаштування Наступний скрипт створює тестову таблицю зі 100 однаковими рядками, кожен з яких містить стовпчик xml з достатньою кількістю даних, щоб забезпечити її збереження поза рядками. У моїй тестовій базі даних довжина генерованого xml становить …

3
SQL Server розбиває A <> B на A <B АБО> B, даючи дивні результати, якщо B недетермінований
Ми зіткнулися з цікавою проблемою із SQL Server. Розглянемо наступний приклад докори: CREATE TABLE #test (s_guid uniqueidentifier PRIMARY KEY); INSERT INTO #test (s_guid) VALUES ('7E28EFF8-A80A-45E4-BFE0-C13989D69618'); SELECT s_guid FROM #test WHERE s_guid = '7E28EFF8-A80A-45E4-BFE0-C13989D69618' AND s_guid &lt;&gt; NEWID(); DROP TABLE #test; скрипка Будь-ласка, забудьте на мить, що s_guid &lt;&gt; NEWID()стан здається …


4
Журнал транзакцій для бази даних 'ім'я бази даних' заповнений через 'XTP_CHECKPOINT'
У мене є питання про XTP_CHECKPOINT. Я використовую SQL Server 2014. У мене є база даних, яка перебуває в простому режимі відновлення. Він також тиражується. Відкритих транзакцій немає. Я запустив, DBCC OPENTRANі він повертається: "Немає активних відкритих транзакцій." Але я постійно отримую це повідомлення кожного разу, коли я намагаюся створити …

2
Проблема оптимізації за допомогою функції, визначеної користувачем
Це запитання було перенесено із переповнення стека, оскільки на нього можна відповісти в Адміністраторі баз даних Stack Exchange. Мігрували 4 роки тому . У мене виникають проблеми з розумінням того, чому SQL-сервер вирішує викликати визначену користувачем функцію для кожного значення таблиці, навіть якщо слід отримати лише один рядок. Фактичний SQL …

4
Коли використовувати CDC для відстеження історії?
Збір даних про зміни SQL Server - це функція, яка зчитує історичні дані з журналів транзакцій SQL Server та зберігає їх у спеціальній таблиці. За допомогою використання спеціальних функцій значень таблиці (TVF) він дозволяє користувачеві запитувати ці дані, що дозволяє або отримати всі зміни в певній таблиці, або лише чисті …

2
Як написати запит, який знаходить усі кругові посилання, коли таблиця посилається на себе?
У мене є така схема (імена змінено), яку я не можу змінити: CREATE TABLE MyTable ( Id INT NOT NULL PRIMARY KEY, ParentId INT NOT NULL ); ALTER TABLE MyTable ADD FOREIGN KEY (ParentId) REFERENCES MyTable(Id); Тобто кожен запис є дитиною іншого запису. Якщо запис запису ParentIdдорівнює його Id, то …

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

6
Розмір бази даних SQL Server не зменшився після видалення великої кількості рядків.
Це питання було перенесено з Super User, оскільки на нього можна відповісти на сервері обміну стеками адміністраторів баз даних. Мігрували 7 років тому . Я не хороший у SQL, але у мене є база даних, яку потрібно підтримувати. Тут майже не залишилось місця, тому я вирішив видалити всі дані, скажімо, …

2
Як знайти оператори SQL, які викликали зростання tempdb?
Темпдб сервера (SQL Server 2008) збільшується до 500 ГБ + кілька разів щомісяця. Чи можна дізнатися, які оператори SQL викликали цю проблему? Проблема зазвичай не викликана create table #temp...; insert into #temp...або є select ... into #temp...складними приєднаннями. Початковий розмір деяких TempDb файлів також автоматично встановлюється в набагато більших значень …

3
Чи можливо відновити sql-сервер Bak і зменшити журнал одночасно?
У нас є файл Bak від клієнта, який ми передали до наших офісів розробників для розслідування проблем. Наразі резервна копія становить 25 Гб, а відновлена ​​база приблизно однакового розміру, проте для відновлення її потрібно 100 Гб. Я вважаю, це тому, що там створена база даних, що має розмір журналу транзакцій …

3
Що таке рівень ізоляції "Хаос" і коли його слід використовувати?
Документація ADO.NET показує можливість встановлення рівня транзакції транзакції SQL в Хаос. Це звучить неприємно, але якщо функція є, імовірно, вона має деяке законне використання. Команда SET TRANSACTION ISOLATION LEVEL в BOL (ах! Бач, я можу використовувати google та BOL) ніщо не називається "хаосом", а ADO.NET має 5 режимів, які добре …

2
Як знати, коли / якщо у мене занадто багато індексів?
Запуск Microsoft SQL Server Profiler раз у раз пропонує мені створити нові індекси та статистику для створення ("... 97% оцінюється покращення ..."). З мого розуміння, кожен доданий індекс може зробити SELECTзапит SQL швидше, але також UPDATEабо INSERTзапит повільніше, оскільки індекси повинні бути скориговані. Що мені цікаво, коли я маю "занадто …

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