Администраторы базы данных

Вопросы и ответы для специалистов по базам данных, которые хотят улучшить свои навыки работы с базами данных и учиться у других в сообществе

1
Как проверить в триггере, если вся строка остается неизменной после обновления?
Конечно, я мог бы сделать это для каждого столбца, сравнивая это так: if (old.column1 = new.column1 and old.column2 = new.column2...) Но было бы трудно закодировать и трудно поддерживать, если я добавлю еще один столбец, например, в будущем. Есть ли способ проверить, все ли столбцы остаются одинаковыми, не проверяя каждый отдельный …

1
Каков размер выборки статистики по умолчанию в SQL Server?
Из MSDN : Если ни один из вариантов выборки (SAMPLE, FULLSCAN, RESAMPLE)не указан, оптимизатор запросов производит выборку данных и вычисляет размер выборки по умолчанию. Как определить размер выборки статистики по умолчанию? Я прошел MSDN, но не нашел никакой формулы или метода, чтобы определить размер выборки по умолчанию. Везде присутствуют только …

1
Как определяется количество шагов гистограммы в статистике
Как определяется количество шагов гистограммы в статистике в SQL Server? Почему он ограничен 200 шагами, хотя мой ключевой столбец имеет более 200 различных значений? Есть ли решающий фактор? демонстрация Определение схемы CREATE TABLE histogram_step ( id INT IDENTITY(1, 1), name VARCHAR(50), CONSTRAINT pk_histogram_step PRIMARY KEY (id) ) Вставка 100 записей …

2
Как я могу сбросить все таблицы в CSV для схемы PostgreSQL?
У меня есть база данных с множеством схем, и я хочу вывести каждое содержимое таблицы в CSV. Мне известна команда COPY, но я не уверен, как написать сценарий, который будет читать все таблицы в схеме и выполнять команду COPY для них.
11 postgresql  backup  csv 

1
Отказано в разрешении на создание «pg_catalog.tablename» во время pg_dump для другого компьютера
Я пытаюсь сбросить некоторые таблицы с 9.5 бета 2 на сервер 9.4.4. Форма команды, которую я использую, довольно стандартна: pg_dump -t table dbname | psql -h hostname -d dbname Я использую пользователя Postgres, который, как я понимаю, вероятно, не идеален, но, поскольку они оба представляют собой блоки обработки данных dev, …

1
Как сбросить статистику после ОБНОВЛЕНИЯ СТАТИСТИКИ… С ROWCOUNT
В целях настройки запросов и тестирования вы можете вручную запустить rowcount и pagecount для статистики индекса таблицы UPDATE STATISTICS. Но как вы пересчитываете / сбрасываете статистику в фактическое содержимое таблицы? --- Create a table.. CREATE TABLE dbo.StatTest ( i int NOT NULL, CONSTRAINT PK_StatTest PRIMARY KEY CLUSTERED (i) ); GO …

4
Как добавить столбец с ограничением внешнего ключа в таблицу, которая уже существует?
У меня есть следующие таблицы, CREATE TABLE users (id int PRIMARY KEY); -- already exists with data CREATE TABLE message (); Как мне изменить messagesтаблицу так, чтобы, senderк нему добавляется новый столбец с именем где senderвнешний ключ ссылается на usersтаблицу Это не сработало # ALTER TABLE message ADD FOREIGN KEY …

2
Неиспользуемые индексы
На основании этого запроса, если я вижу небольшое количество общих чтений (очень близкое к 0 или 0, например, 1 или 2) и большое или умеренное количество пользовательских обновлений (я не смог найти вставки или удаления с этим запросом) с большое количество строк, я должен теоретически удалить индекс. SELECT DISTINCT OBJECT_NAME(s.[object_id]) …

6
Возможные преимущества хранения нескольких значений в одном поле одной строки вместо отдельных строк
Во время нашей последней еженедельной встречи человек, не имеющий опыта работы в администрировании баз данных, поднял этот вопрос: "Будет ли сценарий, который оправдывает хранение данных в виде строки (строки) вместо нескольких строк?" Давайте предположим таблицу с именем, countryStatesгде мы хотим хранить состояния страны; Я буду использовать США для этого примера …

3
Миграция схемы: инструменты данных SQL Server против Liquibase и Flyway
Это может показаться глупым вопросом, но я искал решения с открытым исходным кодом для миграции схем, а именно Liquibase и Flyway. Однако мой начальник сказал мне, что SQL Server Data Tools (SSDT) ​​выполняет ту же работу. Я не уверен, если согласен, но я могу найти очень мало в Интернете, который …
11 schema  ssdt  migration 

3
Плохая оценка кардинальности дисквалифицирует INSERT от минимальной регистрации?
Почему второе INSERTутверждение примерно в 5 раз медленнее первого? Исходя из объема сгенерированных данных журнала, я думаю, что второе не соответствует минимальному уровню ведения журнала. Тем не менее, документация в Руководстве по производительности при загрузке данных указывает на то, что обе вставки должны быть минимально зарегистрированы. Итак, если минимальное ведение …

2
Должен ли я использовать UUID, а также ID
Я уже некоторое время использую UUID в своих системах по разным причинам - от регистрации до отложенной корреляции. Форматы, которые я использовал, изменились, поскольку я стал менее наивным из: VARCHAR(255) VARCHAR(36) CHAR(36) BINARY(16) Когда я дошел до последнего BINARY(16), я начал сравнивать производительность с базовым целым числом с автоинкрементом. Тест …

3
Подсказка NOLOCK меняет порядок возвращаемых записей
Кластерный индекс в Clientполе таблицы LastName. Когда я просто выкидываю все записи из таблицы, они отображаются в алфавитном порядке, если только (nolock)подсказка не используется в рассматриваемом запросе. Этот намек меняет порядок записей. Должно ли это? Я уверен, что ни у одной другой сессии нет открытой транзакции с изменениями в этой …

3
Исключение определенной таблицы из развертывания SSDT
У меня есть база данных со всем в схеме dbo. У меня есть проект SSDT с объектами, которые я добавляю к нему со схемойfoo У меня есть таблица, которая выглядит так в проекте: CREATE table foo.a ( id INT NOT NULL CONSTRAINT [PK_foo_a] PRIMARY KEY CLUSTERED CONSTRAINT [FK_foo_a] FOREIGN KEY …
11 ssdt  deployment 

2
Отслеживание текущего пользователя через представления и триггеры в PostgreSQL
У меня есть база данных PostgreSQL (9.4), которая ограничивает доступ к записям в зависимости от текущего пользователя и отслеживает изменения, сделанные пользователем. Это достигается с помощью представлений и триггеров, и по большей части это работает хорошо, но у меня возникают проблемы с представлениями, которые требуют INSTEAD OFтриггеров. Я пытался уменьшить …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.