Ingrid: insert into mit null-Werten

Hallo

ich habe einen zweidimensionalen Array und moechte diesen in eine Access-DB schreiben. Leider koennen die Werte im Array (variable ART) null sein und die Kolonne in der DB ist als Zahl definiert.
Wie kriege ich die Werte da rein?

hier der Code

numrows = ubound(testArray,1)
numcols = ubound(testArray,2)

for numcounter = 0 to numcols
 sql3 = "Insert into NIS2GIS (AUFTRAG, ART, CODE, Y , X ) values ('" & testArray(0, numcounter) & "', " & testArray(1, numcounter) & ", '" & testArray(2, numcounter) & "', " & testArray(3, numcounter) & ", " & testArray(4, numcounter) & ")"
 neudb.execute(sql3)
next

========================

Dank&Gruss
Ingrid

  1. Hi,

    ich weiß nicht, ob ich dein Problem ganz genau verstehe, aber folgendes kannst du tun um NULL-Werte in die Tabelle zu bekommen, du musst dir der Einfachheit halber einige Zwischenvariablen einfügen - Leider weiß ich jetzt gerade nicht welche Sprache du benutzt, da VB aber sehr einfach ist nehm ich das jetzt einfach mal:
    Zunächst bauen wir mal die Abfrage um und zwar so, dass keine ' mehr enthalten sind:
    INSERT INTO tab (x, y, z) VALUES (v_1, v_2, v_3)

    Dann sorgen wir dafür, dass in den v_x das drin steht, was wir gerne hätten, also ein Wert oder eben NULL:
    if IsNull(arr_Variablen(1, 1)) then
     v1 = NULL
    else
     v1 = "'" & arr_Variablen(1, 1) & "'"
    end if

    Das sorgt jetzt dafür, dass ein eventueller Wert im Array ordnungsgemäß als String eingefügt wird, während im ersten Fall die SQL-Abfrage so aus sieht:
    INSERT INTO tab (x, y, z) VALUES (NULL, NULL, NULL)