Jak nastavit v prikazu UPDATE hodnotu NULL   zodpovězená otázka

SQL

Dobry den,

potreboval bych poradit, zda jde v SQL v prikazu UPDATE nejak zaridit, ze nova hodnota ma byt NULL. Posilam prikaz z VB .NET, ale nejak se mi ho nedari sestavit.

Ani nevim, zda je to mozne nastavit a nemusi se to obejit vymazanim a novym vlozenim polozky bez uvedeni dane polozky ci popripade jednoduse vlozenim hodnoty -1 a tu brat pote jako NULL...

Dekuju moc za radu.

Ales

nahlásit spamnahlásit spam 0 odpovědětodpovědět

A jak ten příkaz vytváříte? Pošlete nám sem kus kódu. Jak máme jinak poradit?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Dobry den,

delam to nejak takto, respektive, jedna z variant:

Dim cmd As SqlClient.SqlCommand
cmd = New SqlClient.SqlCommand("UPDATE ZARIZENI SET PDA_ID = NULL WHERE (ZARIZENI_ID = @zarizeni_id)", SqlConnection1)
With cmd
    .Parameters.Add("@zarizeni_id", SqlDbType.Int).Value = ListBox1.Tag
End With
Dim result As Integer
Try
   result = cmd.ExecuteNonQuery()
Catch ex As SqlClient.SqlException
   MessageBox.Show(ex.Message)
End Try

Jenze, nedari se mi rict serveru, ze NULL je opravdu NULL :-( Takze jsem zkousel neco takoveho:

Dim nic As New Object
nic = Nothing
Dim cmd As SqlClient.SqlCommand
cmd = New SqlClient.SqlCommand("UPDATE ZARIZENI SET PDA_ID = @pda_id WHERE (ZARIZENI_ID = @zarizeni_id)", SqlConnection1)
With cmd
    .Parameters.Add("@zarizeni_id", SqlDbType.Int).Value = ListBox1.Tag
    .Parameters.Add("@pda_id", SqlDbType.Int).Value = -1
End With
Dim result As Integer
Try
   result = cmd.ExecuteNonQuery()
Catch ex As SqlClient.SqlException
   MessageBox.Show(ex.Message)
End Try

Jenze to samozrejme take nefunguje :-)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Uz to funguje, omlouvam se :-)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Pokud to chcete předávat parametrem, jako hodnotu toho parametru předejte buď Nothing nebo DBNull, jedno z toho fungovat bude, z hlavy nevím, které.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback