Ir para o conteúdo
startuga

[Resolvido] Update Null

Mensagens Recomendadas

startuga

Boas,

Estava agora a dar uma vista de olhos por um projecto que tenho e reparei agora que este código:

   Protected Sub btn_updatePT_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btn_updatePT.Click
    Dim con As New SqlConnection("Data Source=xxxxx\xxxx;Initial Catalog=xxxxx;User ID=xxxx;pwd=xxxx")
    con.Open()
    Dim command As New SqlCommand("UPDATE Pt SET PT_ID = @PT_ID, PT_Description = @PT_Description, AREA_ID = @AREA_ID FROM Pt INNER JOIN AREAS ON Pt.AREA_ID = AREAS.AREA_ID WHERE (Pt.PT_ID = @PT_ID)", con)
    command.Parameters.Add("@PT_ID", SqlDbType.VarChar).Value = txb_promotionID.Text
    command.Parameters.Add("@PT_Description", SqlDbType.VarChar).Value = txb_promotionDescription.Text
    command.Parameters.Add("@AREA_ID", SqlDbType.VarChar).Value = ddl_PTareaCode.SelectedValue

    command.ExecuteNonQuery()
    con.Close()
   End Sub

Não me está a fazer Update a todos os campos, mais propriamente não faz ao campos que estão com 'NULL', entretanto já tentei fazer com 'WHERE IS NULL' mas não consigo que ele faço o update desses campos, como posso proceder para fazer isso?

Obrigado

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
nelsonr

Qual é o proposito desse UPDATE? E para que o INNER JOIN ali?

Queres atualizar a descrição e codigo da area para as promoções com o ID indicado em xtb_promotionid.text?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
nelsonr

Mas o objectivo não é só atualziar a tabela Pt?

Não podia ser apenas:

UPDATE Pt SET PT_Description = @PT_Description, AREA_ID = @AREA_ID WHERE PT_ID = @PT_ID

Em relação à questão inicial, os campos que te referes são os restantes na tabela Pt?

Caso sejam, tens duas hipoteses

- incluir no UPDATE todos os campos

- ou definir na estrutura da tabela os valores default para os campos e indicar que não podem ter valor NULL

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
nelsonr

Espera lá, esta linha:

command.Parameters.Add("@AREA_ID", SqlDbType.VarChar).Value = ddl_PTareaCode.SelectedValue

está a passar para o parametro @AREA_ID o valor selecionado na dropdown ddl_PTareaCode.SelectedValue.

Não é esse valor que queres atualizar na tabela Pt?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.