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

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

2
Использование размера столбца намного больше, чем необходимо
Я создаю базу данных SQL Server с кем-то еще. Одна из таблиц небольшая (6 строк) с данными, которые, вероятно, останутся неизменными. Существует небольшая вероятность того, что будет добавлен новый ряд. Таблица выглядит примерно так: CREATE TABLE someTable ( id int primary key identity(1,1) not null, name varchar(128) not null unique …

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

5
Какова соответствующая индексная архитектура, когда она вынуждена реализовать IsDeleted (мягкое удаление)?
В настоящее время у нас есть база данных и приложение, которое полностью функционально. У меня нет возможности изменить архитектуру на этом этапе. Сегодня каждая таблица в базе данных имеет поле «IsDeleted» NOT NULL BIT со значением по умолчанию «0». Когда приложение «удаляет» данные, оно просто обновляет флаг IsDeleted до 1. …

1
CREATE DATABASE на разделах RAW больше не работает?
Я пытаюсь создать базу данных, используя два необработанных, то есть неформатированных раздела. Microsoft Docs заявляет, что вы можете сделать это, вам просто нужно указать только букву диска исходного раздела, как в: CREATE DATABASE DirectDevice ON (NAME = DirectDevice_system, FILENAME = 'S:') LOG ON (NAME = DirectDevice_log, FILENAME = 'T:') Однако …

1
Почему CHECKDB читает файл журнала транзакций в базе данных с таблицей, оптимизированной для памяти?
tl; dr : почему CHECKDB читает журнал транзакций для пользовательской базы данных с таблицами, оптимизированными для памяти? Похоже, что CHECKDB читает файл журнала транзакций пользовательской базы данных при проверке одной из моих баз данных, в частности базы данных, которая использует таблицы OLTP в памяти. CHECKDB для этой базы данных все …

1
Как расширить объемы на коробках SQL Server?
Вот вопрос для системных администраторов (или тех, кто прошел через этот опыт). Моя компания хочет выделить дополнительное дисковое пространство на существующих блоках SQL Server в производстве. Нам интересно, можно ли выполнить расширение тома («Расширить том ...» в разделе «Управление дисками») в режиме онлайн или необходимо отключить службу SQL Server. Любая …

5
Ошибка SQL Server 8632 из-за более 100 000 записей в предложении WHERE
Моя проблема (или, по крайней мере, сообщение об ошибке) очень похожа на обработчике запросов закончились внутренние ресурсы - очень длинный SQL-запрос . Мой клиент работает с SQL-запросом выбора, содержащим предложение where с ровно 100 000 записей. Запрос не выполняется с ошибкой 8632 и сообщением об ошибке Внутренняя ошибка: достигнут лимит …

1
В каком порядке PostgreSQL проверяет права доступа к объектам?
Учитывая роль базы данных, user1функцию, something()определенную как хранимая процедура, и представление, созданное следующим образом: CREATE VIEW view1 AS select * from something() И, учитывая это разрешения: REVOKE ALL ON FUNCTION something FROM user1 REVOKE SELECT ON view1 FROM user1 Когда я бегу SELECT * FROM view1, я получаю ошибку permission …

2
НЕ (a = 1 И b = 1) против (a <> 1 И b <> 1)
В WHEREпредложении SQL-запроса я ожидаю, что эти два условия будут иметь одинаковое поведение: NOT (a=1 AND b=1) против a&lt;&gt;1 AND b&lt;&gt;1 Первое условие ведет себя так, как и ожидалось, и, хотя я и предполагаю, что второе условие делает то же самое, оно не выполняется Это очень простые вещи, но стыдно, …
16 condition 

3
Почему я бы предпочел ALGORITHM = COPY вместо ALGORITHM = INPLACE?
С тех пор как в MySQL 5.6 был введен интерактивный DDL, ALTER TABLEкоманда может иметь либо одну, ALGORITHM=INPLACEлибо ALGORITHM=COPYуказанную. Обзор онлайн DDL отмечает , что, по умолчанию, INPLACEиспользуется везде , где это возможно, и предполагает (никогда не вполне изложив его) , что INPLACEалгоритм дешевле , чем COPYодин. Так какую причину …


3
Заключение запроса в IF EXISTS делает его очень медленным
У меня есть запрос ниже: select databasename from somedb.dbo.bigtable l where databasename ='someval' and source &lt;&gt;'kt' and not exists(select 1 from dbo.smalltable c where c.source=l.source) Вышеуказанный запрос завершается за три секунды. Если приведенный выше запрос возвращает какое-либо значение, мы хотим, чтобы хранимая процедура завершила работу, поэтому я переписал его, как …

2
СОЗДАТЬ ТАБЛИЦУ КАК ВЫБРАТЬ В
PostgreSQL поддерживает, CREATE TABLE ASи SELECT INTOкогда я использую оба? CREATE TABLE AS - определить новую таблицу из результатов запроса CREATE TABLE ASсоздает таблицу и заполняет ее данными, вычисленными по SELECTкоманде. Столбцы таблицы имеют имена и типы данных, связанные с выходными столбцами SELECT(за исключением того, что вы можете переопределить имена …
16 postgresql  ctas 

2
Законно ли для SQL Server заполнять столбцы PERSISTED данными, которые не соответствуют определению?
Я занимаюсь этим вопросом о странных значениях в PERSISTEDвычисляемом столбце. Ответ там дает несколько предположений о том, как это поведение стало. Я спрашиваю следующее: это не полная ошибка? PERSISTEDРазрешено ли когда-либо столбцам вести себя так? DECLARE @test TABLE ( Col1 INT, Contains2 AS CASE WHEN 2 IN (Col1) THEN 1 …

2
Нецелые первичные ключевые соображения
контекст Я проектирую базу данных (на PostgreSQL 9.6), которая будет хранить данные из распределенного приложения. Из-за распределенной природы приложения я не могу использовать целые числа с автоинкрементом в SERIALкачестве основного ключа из-за потенциальных условий гонки. Естественным решением является использование UUID или глобального уникального идентификатора. Postgres поставляется со встроенным UUIDтипом , …

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