Вопросы с тегом «alter-table»

12
MySQL - самый быстрый способ ALTER TABLE для InnoDB

У меня есть таблица InnoDB, которую я хочу изменить. Таблица содержит ~ 80 миллионов строк и выходит из нескольких индексов. Я хочу изменить имя одного из столбцов и добавить еще несколько индексов. Какой самый быстрый способ сделать это (при условии, что я могу страдать даже из-за простоя - сервер...

12
Могу ли я переименовать значения в столбце MySQL ENUM в одном запросе?

Предположим, у меня есть таблица базы данных с ENUM('value_one','value_two'). Я хочу изменить это на ENUM('First value','Second value'). В настоящее время я делаю это следующим образом: ALTER TABLE `table` MODIFY `column` ENUM('value_one','value_two','First value','Second value'); UPDATE `table`...

11
Добавление обнуляемого столбца в таблицу стоит более 10 минут

У меня проблемы с добавлением нового столбца в таблицу. Я пытался запустить его пару раз, но после более 10 минут работы решил отменить запрос из-за времени блокировки. ALTER TABLE mytable ADD mycolumn VARCHAR(50); Полезная информация: Версия PostgreSQL: 9.1 Количество рядов: ~ 250К Количество...

11
Быстро изменить столбец NULL на NOT NULL

У меня есть таблица с миллионами строк и столбцом, который допускает значения NULL. Однако ни одна строка в настоящее время не имеет значения NULL для этого столбца (я могу достаточно быстро это проверить с помощью запроса). Однако, когда я выполняю команду ALTER TABLE MyTable ALTER COLUMN MyColumn...

11
Как добавить столбец с ограничением внешнего ключа в таблицу, которая уже существует?

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

11
Является ли ALTER TABLE… DROP COLUMN действительно операцией только с метаданными?

Я нашел несколько источников, которые утверждают, что ALTER TABLE ... DROP COLUMN - это операция только с метаданными. Источник Как это может быть? Не нужно ли удалять данные во время DROP COLUMN из базовых некластеризованных индексов и кластеризованного индекса / кучи? Кроме того, почему Microsoft...

10
Безопасно ли отменить запрос PostgreSQL ALTER TABLE, ожидающий блокировки?

Мы начали ALTER TABLEзапрос несколько часов назад и только недавно поняли (через pg_stat_activity), что он ожидает блокировки. Мы обнаружили другой запрос, который удерживает блокировку таблицы, которую мы хотим изменить, и не отпускает ее. Наш запрос является «простым» запросом (изменяющим тип...

10
Оптимизирует ли PostgreSQL добавление столбцов с ненулевыми значениями по умолчанию?

При добавлении NOT NULLстолбцов со DEFAULTзначением - оптимизирует ли PostgreSQL эту операцию? Если в таблице n строк, неоптимизированный столбец alter-table-add-column даст n записей значения по умолчанию, что, очевидно, может быть очень болезненным. При оптимизации БД мгновенно создаст новый...

10
Что происходит, когда вы изменяете (уменьшаете) длину столбца?

Допустим, у меня есть два столбца типа NUMBER(без точности и масштаба) и VARCHAR(300). Я видел, что эти столбцы слишком велики для моих данных, поэтому я хочу изменить их на NUMBER(11)и VARCHAR(10). Так что, если я запускаю этот оператор SQL: ALTER TABLE FOO MODIFY(BAR NUMBER(10)); Смогу ли я...

8
SQL устанавливает допустимые значения для столбца

Я хочу сделать ALTER TABLEвыражение, которое добавляет новый столбец и устанавливает значение по умолчанию, а также определяет допустимые значения для этого столбца. Это текстовый столбец, и допустимыми должны быть только «значение1», «значение2» и «значение3». По умолчанию должно быть «значение1»...