Como Alterar o Tipo de Uma Campo da Tabela
07/03/2003
0
Minha tabela tem o campo Codigo que está como Integer, mas quero troca-lo para smallint, como faço.
Obrigada ao gatinho que me ajudar
Bjus
Obrigada ao gatinho que me ajudar
Bjus
Anonymous
Curtir tópico
+ 0
Responder
Posts
07/03/2003
Anonymous
Olha ´Gatinha´, sinceramente eu não sei, mas como na informática existem mais de um caminho, experimente:
1º Criar um novo campo com o tipo desejado
2º Copiar todos os dados para esse novo campo
3º Deletar o campo antigo
4º Renomear o campo novo para o campo antigo.
AAHH, o exemplo:
alter table CLIENTE add CODCLIENTE2 smallint;
update CLIENTE set CODCLIENTE2 = CODCLIENTE;
alter table CLIENTE drop CODCLIENTE;
alter table CLIENTE CODCLIENTE2 to CODCLIENTE;
1º Criar um novo campo com o tipo desejado
2º Copiar todos os dados para esse novo campo
3º Deletar o campo antigo
4º Renomear o campo novo para o campo antigo.
AAHH, o exemplo:
alter table CLIENTE add CODCLIENTE2 smallint;
update CLIENTE set CODCLIENTE2 = CODCLIENTE;
alter table CLIENTE drop CODCLIENTE;
alter table CLIENTE CODCLIENTE2 to CODCLIENTE;
Responder
08/03/2003
Wmunir
[quote:ae4f68f42a=´Camila Alves´]Minha tabela tem o campo Codigo que está como Integer, mas quero troca-lo para smallint, como faço.
Obrigada ao gatinho que me ajudar
Bjus[/quote:ae4f68f42a]
Olá Camila. Tudo bem?
Bem, para vc fazer isso, vc poderá fazer como o nosso amigo mensionou, porém, se vc tiver dependências com o campo referido, não poderá excluí-lo, como foi citado.
Assim sendo, vc poderá fazer da seguinte maneira:
Vc terá que trabalhar com as Tabelas de sistemas do Interbase. Aquelas que possuem RDB$Alguma coisa. por exemplo:
Utilizando o SQLExplorer, abra o BAnco de dados e vá no menu View e clique sobre a opção ´System View´.
Procure entidade (tabela) RDB$Fields.
Localize o nome do seu campo. Os nomes dos campos ficam armazenados na coluna RDB$Field_Name.
Após encontrá-los, vc deverá alterar os campos:
RDB$Field_Type = 7
RDB$Field_Length = 2
Onde o campo RDB$Field_Type indica os tipos dos campos:
RDB$Field_Type = 7 => SmallInt
RDB$Field_Type = 9 => Integer
RDB$Field_Type = 14 => Char
RDB$Field_Type = 37 => VarChar
RDB$Field_Type = 35 => Data
RDB$Field_Type = 27 => Currency
E assim por diante.
Verifique ai, ok?
Abraços... :)
Obrigada ao gatinho que me ajudar
Bjus[/quote:ae4f68f42a]
Olá Camila. Tudo bem?
Bem, para vc fazer isso, vc poderá fazer como o nosso amigo mensionou, porém, se vc tiver dependências com o campo referido, não poderá excluí-lo, como foi citado.
Assim sendo, vc poderá fazer da seguinte maneira:
Vc terá que trabalhar com as Tabelas de sistemas do Interbase. Aquelas que possuem RDB$Alguma coisa. por exemplo:
Utilizando o SQLExplorer, abra o BAnco de dados e vá no menu View e clique sobre a opção ´System View´.
Procure entidade (tabela) RDB$Fields.
Localize o nome do seu campo. Os nomes dos campos ficam armazenados na coluna RDB$Field_Name.
Após encontrá-los, vc deverá alterar os campos:
RDB$Field_Type = 7
RDB$Field_Length = 2
Onde o campo RDB$Field_Type indica os tipos dos campos:
RDB$Field_Type = 7 => SmallInt
RDB$Field_Type = 9 => Integer
RDB$Field_Type = 14 => Char
RDB$Field_Type = 37 => VarChar
RDB$Field_Type = 35 => Data
RDB$Field_Type = 27 => Currency
E assim por diante.
Verifique ai, ok?
Abraços... :)
Responder
Clique aqui para fazer login e interagir na Comunidade :)