auteraa tabela

1873 palavras 8 páginas
ALTER TABLE lhe permite alterar a estrutura da tabela existente. Por exemplo, você pode adicionar ou deletar colunas, criar ou remover índices, alterar o tipo de coluna existentes, ou renomear coluna ou tabelas. Você também pode alterar o comentário para a tabela e tipo de tabela. See Secção 6.5.3, “Sintaxe CREATE TABLE”.
Se você utilizar ALTER TABLE para alterar a especificação da coluna, mas DESCRIBE tbl_name indicar que a sua coluna não foi alterada, é possível que o MySQL tenha ignorado ou a sua modificação por uma das razões descritas em Secção 6.5.3.1, “Alteração de Especificações de Colunas”. Por exemplo, se você tentar alterar uma coluna VARCHAR para CHAR, MySQL ainda usará VARCHAR se a tabela conter outras colunas de tamanho variável.
ALTER TABLE funciona fazendo uma cópia temporária da tabela original. A alteração é realizada na cópia, assim a tabela original é deletada e a nova tabela é renomeada. Isto é feito de tal forma que todas as desnecessáriaatualizações são automaticamente redirecionadas para a nova tabela sem nenhuma atualização errada. Enquanto o ALTER TABLE é executado, a tabela original pode ser lida por outros clientes. Atualizações e escrita na tabela são guardadas até a nova tabela estar pronta.
Note que se você utilizar qualquer outra opção de ALTER TABLE, exceto RENAME, o MySQL irá sempre criar um a tabela temporária, mesmo se os dados não precisarem realmente serem copiados (como quando você altera o nome de uma coluna). Planejamos corrigir isto no futuro, mas como não se faz ALTER TABLE com tanta frequência, isto não é de alta prioridade em nosso TO DO. Para tabelas MyISAM, vOcê pode aumentar a velocidade na parte da recriação dos índices (que a parte mais lenta do processo recriação) atribuindo um alto valor à variável myisam_sort_buffer_size.
Para utilizar ALTER TABLE, você precisa dos privilégios ALTER, INSERT e CREATE na tabela.
IGNORE é uma extensão do MySQL ao SQL-92. Ele controla como o ALTER TABLE funciona se houver

Relacionados