VB6 - IIF (ISNULL(rs),"TRUE",Replace())
warum kann ich nicht verwenden :
rep8_bc = IIf(IsNull(rs(8)), "null", Replace(rs(8), "'", "''"))
es sagen, "Ungültige Verwendung von Null"
aber wenn ich zu entfernen, zu ersetzen, es ist Arbeit. Und dann kommen Fehler, da Datensatzes wird ein Apostroph-Zeichen, so dass ich den code ändern in diesem :
rep8_bc = "null"
If IsNull(rs(8)) = False Then rep8_bc = Replace(rs(8), "'", "''")
oder so :
If IsNull(rs(8)) = False Then
rep8_bc = Replace(rs(8), "'", "''")
else
rep8_bc = "null"
end if
- So dass Sie zu erreichen versuchen, was?
- Verwenden .Net statt 😉 ich kann nicht kompilieren VB6 auf meinem system, da ich nicht die tools installiert sind. Ich bin nicht vertraut mit den inline-if-Anweisung von VB6. Aber die syntax sieht ok für mich
- okay.. das ist so alt.. 😛 einfach Fragen, vielleicht weiß jemand die Antwort... hehehe xD
Du musst angemeldet sein, um einen Kommentar abzugeben.
Meistens wahrscheinlich compiler nicht Kurzschluss innerhalb der IIF () - Anweisung. Compiler nimmt es als ganze statment (beide Werte) vor der Rückkehr ein. Das ist, wo Sie den Fehler. So bricht in Stücke der richtigen bedingten statemetns wäre hier der Schlüssel. So haben Sie alle erreicht, die mit Ihrer Antwort.
Weiter hinzufügen, IIF() ist viel langsamer in der Ausführung als die IF-ELSE-Statements.
IIf
nicht Kurzschluss (in VB6 oder VB.Net).