2
respostas

Alterar tipo de dados na tabela?

Boa noite. Estava tentando resolver o exercício e acabei deixando o valor da tabala recebida como 'default'.

CREATE TABLE [dbo].[compras](
    [id] [int] IDENTITY(1,1) NOT NULL,
    [valor] [decimal](18, 2) NULL,
    [data] [date] NULL,
    [observacoes] [nvarchar](400) NOT NULL,
    [recebida] [bit] NULL DEFAULT ('default'),

No vídeo o valor padrão é 0, ai quando eu tento inserir um insert values (insert into compras (valor, data ) values ('200', '2015.10.04')), o SQL diz "Falha ao converter o varchar valor 'default' para o tipo de dados bit. "

Podem me ajudar por favor?

2 respostas

Oi Guilherme, duas maneiras. Ou você dropa a tabela e cria de novo, ou pode procurar pelo comando alter table no sqlserver. Ele serve para alterar uma estrutura de tabela previamente criada.

Oi Guilherme

primeiro você precisa fazer um sp_help na sua tabela para descobrir o nome da constraint criada para o DEFAULT da sua coluna

sp_help compras

depois você precisa deletar a constraint

alter table compras 
 DROP constraint DF__compras__recebid__119F9925

e depois inclui-la novamente, agora com o valor correto

alter table compras 
 ADD constraint DF__compras__recebid__119F9925 
 default '0' for [RECEBIDA]

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software