[NEWSboard IBMi Forum]

Thema: Nullwert ???

Hybrid View

  1. #1
    Registriert seit
    Apr 2003
    Beiträge
    195

    Nullwert ???

    Hallo allerseits,

    wieder einmal eine Frage an die Gemeinschaft. Ich habe folgendes SQL-Statement mit dem ich das Feld LIFUID in der Datei RWLIEFP mit dem Wert aus dem Feld ATTAX der Datei ATAXNO befüllen will.
    Das Feld ATTAX hat eine Länge von 50, das Feld LIFUID eine Länge von 15. Mit folgendem SQL-Statement erhalte ich die Fehlermeldung, dass NULLWERTE für Spalte oder Variable LIFUID nicht zulässig sind. Ich habe aber keine Nullwerte, oder?

    Code:
    update rwlex305/rwliefp                             
    set lifuid =                                        
    (select substr(attax, 1, 15) from dcwd/ataxno       
    where rwliefp.lilikrkto = atanum                    
    and attax <> ' ' and atagr = '305')                 
    where lifuid = ' '

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Aber nicht für alle Daten hast du Werte:

    update rwlex305/rwliefp
    set lifuid =
    (select substr(attax, 1, 15) from dcwd/ataxno
    where rwliefp.lilikrkto = atanum
    and attax <> ' ' and atagr = '305')
    where lifuid = ' '
    and exists (select * from dcwd/ataxno
    where rwliefp.lilikrkto = atanum )
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Apr 2003
    Beiträge
    195
    Danke für die rasche Antwort,

    aber trotzdem bekomme ich dieselbe Meldung !?!

  4. #4
    Registriert seit
    Nov 2012
    Beiträge
    47
    update rwlex305/rwliefp
    set lifuid =
    (select substr(attax, 1, 15) from dcwd/ataxno
    where rwliefp.lilikrkto = atanum
    and attax <> ' ' and atagr = '305')
    where lifuid = ' '
    and exists (select * from dcwd/ataxno
    where rwliefp.lilikrkto = atanum
    and attax <> ' ' and atagr = '305')

  5. #5
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Code:
    update rwlex305/rwliefp
    set lifuid =
    Coalesce ((select substr(attax, 1, 15) from dcwd/ataxno
    where rwliefp.lilikrkto = atanum
    and attax <> ' ' and atagr = '305'), LIFUID)
    where lifuid = ' '
    Damit ersparrst du dir das zweite Select.

    Ob jedoch das zweite Select besser ist als für jeden Satz immer ein Update zu machen, hängt natürlich von den Daten ab.

    lg Andreas

Similar Threads

  1. Graphic + variable Länge
    By fdh in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 26-10-11, 12:11
  2. SQL-Fehler free-rpg
    By AS400SD in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 06-10-10, 15:34
  3. Fehler im SQL bzw. Joblog
    By GraueEminenz in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 10-07-06, 11:58
  4. SQL Stored Procedure verschwindet
    By florian in forum IBM i Hauptforum
    Antworten: 10
    Letzter Beitrag: 17-05-06, 16:08
  5. SQL-Error
    By Stefan_R in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 24-10-01, 10:17

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •