Boas, ora bem!
Eu sou um grande apaixonado na linguagem SQL, como diz Sr. Santos é um
espectáculo!!
Tenho andado a pensar o porquê de não funcionar, pelo que sei no VB2008 com
o seguinte exemplo se consegue alterar, alias é assim que eu faço:
SQL = "ALTER TABLE "
SQL &= Tabela
SQL &= " ALTER COLUMN "
SQL &= Coluna & " " & Tipo
cnSQL.ConnectionString = Conexao
cnSQL.Open()
Dim cmSelect As New SqlCommand(SQL, cnSQL)
Dim Execute As SqlDataAdapter
Execute = cmSelect.ExecuteScalar
cnSQL.Close()
Ex.: ALTER TABLE tabela ALTER COLUMN Coluna1 nvarchar(15)
Mas também me lembro-me que há tempos em VB6 com Access 97, tive um problema
muito idêntico, e na altura tb não consegui resolver esse problema, mas na
programação é assim qdo n se sabe, vai-se por outro caminho!
Então, eliminei a tabela no próprio código e voltava a criar a mesma tabela
com as devidas alterações, penso q é a melhor solução.
O que entendi nesse problema, provavelmente deve utilizar o Access posterior
ao 2007 (penso q o 2007 já utiliza o motor de busca SQL) e parece-me que o
Access não suporte essa função de alterar coluna ou então tb pode ser algum
problema de direitos a base de dados.
Cumprimentos! E boa sorte!
Ricardo Freitas
> -----Mensagem original-----
> Mais uma vez os meus agradecimentos ao Ricardo, mas continuo a não
conseguir ALTERAR.
> Consigo ADICIONAR com: ALTER TABLE Entidades ADD COLUMN Profissao Char
> (40)
> Consigo REMOVER com: ALTER TABLE Entidades DROP COLUMN Profissao
> Mas se fizer, ALTER TABLE Entidades ALTER COLUMN
> Profissao Char (40), continua a dar erro e não altera.
>> Run-time error '3293'
>> Sytaxe error in ALTER TABLE statment.
> Já consultei os Sites que indicou, e procedi como indicado no site do
'w3schools' para alterar, mas mesmo assim não vai.
> Cumprimentos
> Manuel Dias - Parede
> -----Mensagem Original-----
> A sintaxe é a seguinte "ALTER TABLE [Nome da Tabela] ALTER COLUMN
> [Nome da Coluna] [Tipo]
> Como por exemplo ALTER TABLE Entidades ALTEER COLUMN Proffisao
> nvarchar
(40)
> Nota eu uso o SQL Server.
> Tens nesses sites alguns exemplos:
> http://www.macoratti.net/
> http://www.w3schools.com/sql/default.asp
> São muitos bons!
> Boa sorte!
> Ricardo Freitas
> -----Mensagem original-----
> Obrigado pela sua resposta, mas parece não resultar.
> Eu tentei inicialmente com este comando:
> -----------------------------------
> SQL - ALTER TABLE Entidades ALTER COLUMN Profissao TEXT(40) DB.Execute
SQL, dbFailOnError
> -----------------------------------
> dava erro.
> Modifiquei o ALTER COLUMN para modify COLUMN
> -----------------------------------
> SQL - ALTER TABLE Entidades MODIFY COLUMN Profissao TEXT(40)
> DB.Execute
SQL, dbFailOnError
> -----------------------------------
> mas também me dá o seguinte erro:
> Run-time error '3293'
> Sytaxe error in ALTER TABLE statment.
> Pesquisei em SQL mas não encontro nada referente a 'scholl' nem a
> 'MODIFY
COLUMN'. Só 'ALTER COLUMN'
> Uso o 'Visual Basic' versão 6.
> Cumprimentos
> Manuel Dias - Parede
> -----Mensagem Original-----
> É facil. Basta fazer alter table modify collmun coluna tipo. Atençao
> pesquisa em sql scholl para ver se está correcta a sintaxe da coluna.
> Enviado do meu HTC
> Ricardo Freitas
> ----- Mensagem Original -----
> Como posso dentro de um programa 'VisualBasic' alterar o tamanho de um
campo (por exemplo de 30 para 40 caracteres) ?
>
> Com o comando 'SQL - ALTER TABLE 'x' ADD COLUMN 'x'...' consigo CRIAR
> um
campo com 'n' caracteres, mas e se eu pretender alterar a
> dimensão de um campo já criado, poderei fazê-lo ?
> É que se fizer 'SQL - ALTER TABLE 'x' ALTER COLUMN 'x'...' dá erro.
>
> Cumprimentos
> Manuel Dias - Parede
> Manuel Dias
--
-----------------------------------------------------------------------
Revista COMPUTADOR
<<< EM BANCA A REVISTA N. 146 >>>
http://www.clubeinformatica.com
-----------------------------------------------------------------------
- Para responder a esta mensagem, basta um um clique sobre "Responder" (ou
"Reply"). A sua resposta será enviada para "[email protected]" e
depois reencaminhada ao autor e a todo o grupo.
- Para enviar a sua própria mensagem a solicitar ajuda, envie um email para:
[email protected]
- Para anular a inscrição neste grupo, envie um email para:
[email protected]
- Para consultar o histórico de mensagens, visite este grupo em:
https://groups.google.com/group/ajuda-informatica/topics
- Para contactar o Moderador:
[email protected]
-----------------------------------------------------------------------