update, zapis rekordów pustych

0

Witam serdecznie

chciałabym się zapytać , czy jest możliwość wykonania zapytania SQL, które sprawdza rekordy puste. Jeśli rekord jest pusty to zapisuje to do innej kolumny, ale tylko nazwę kolumny w której brakuje. Zobrazuję to:

tabela

nazwa_kol_1 nazwa_kol_2 nazwa_kol_3 kol_nie_sprawdzana kol_zapis
a null b a
b null z null
null s null b
a null null null

po wykonania zapytania , tabela powinna przedstawiać się następująco:

nazwa_kol_1 nazwa_kol_2 nazwa_kol_3 kol_nie_sprawdzana kol_zapis
a null b a nazwa_kol_2
null null z null nazwa_kol_1 nazwa_kol_2
null s null b nazwa_kol_1 nazwa_kol_3
a null null null nazwa_kol_2 nazwa_kol_3

Baza jest na Access , próbowałam iif, ale zapisywało mi tyko pierwszy pusty rekord i przechodzi do następnego wiersza.

Tak próbowałam:
1)

   stmt.executeUpdate("UPDATE tabela "
                    + " SET kol_zapis =  If [nazwa_kol_1]  IS NULL Then"
                    + "[kol_zapis] = 'brak nazwa_kol_1' "
                    + "  ElseIf [nazwa_kol_2]  IS NULL Then"
                    + "      [kol_zapis] = 'brak nazwa_kol_2' "
                    + "      ElseIf [nazwa_kol_3] IS NULL Then"
                    + "         [kol_zapis] = 'brak nazwa_kol_3' "
                    + "      Else"
                    + "   [kol_zapis] = ''"
                    + " End If End If");

zwraca błąd :

java.sql.SQLException: General error
2)

  stmt.executeUpdate("UPDATE tabela "
                      + " SET kol_zapis =  kol_zapis & "
                      + " IIf ([nazwa_kol_1]  IS NULL, 'brak nazwa_kol_1 ' , "
                      + " IIf ([nazwa_kol_2]  IS NULL, 'brak nazwa_kol_2 ' ,  "
                      + " IIf ([nazwa_kol_3] IS NULL, 'brak nazwa_kol_3 ', '' )))");

            

tu nie zwraca błędu, ale łapie pierwszy pusty rekord i przechodzi do następnego wiersza

Bardzo przejmie proszę o wskazówkę

1

Coś w ten deseń:
UPDATE tabela
SET kol_zapis = kol_zapis &
IIf ([nazwa_kol_1] IS NULL, 'brak nazwa_kol_1 ' ,'') &
IIf ([nazwa_kol_2] IS NULL, 'brak nazwa_kol_2 ' , '') &
IIf ([nazwa_kol_3] IS NULL, 'brak nazwa_kol_3 ', '')

0

tak , właśnie o to chodziło :) :) :)
Nie wiem, czemu nie pomyślałam, aby dodać &

1 użytkowników online, w tym zalogowanych: 0, gości: 1