'SQL INSERT INTO' met daarin IF

Status
Niet open voor verdere reacties.

Visara

Gebruiker
Lid geworden
10 mrt 2019
Berichten
217
Goedemiddag,

Ik heb de volgende SQL-code
Code:
INSERT INTO [COLOR="#FF8C00"][B]Tabel2[/B][/COLOR] ( omschrijving, bestelnummer, [COLOR="#FFA500"][B]status[/B][/COLOR] )
SELECT Tabel1.omschrijving, Tabel1.bestelnummer, [COLOR="#008000"][B]Tabel1.status[/B][/COLOR]
FROM Tabel1;

In veld Tabel1.status staan de volgende mogelijke teksten:
Actief
Non actief
of het wordt leeg gelaten, of misschien komt er een keer iets met een typfout te staan.

Ik wil graag in Tabel2.status iets anders opslaan dan de inhoud van Tabel1.status:
"Actief" wordt: niks/blanco/""/null (een leeg tekstveld dus)
"Non actief" wordt: X
alle andere dingen worden: ?
Dus als deze SQL wordt uitgevoerd worden er in Tabel2.status 'X', "" of '?' ingevuld.

Kan iemand me laten zien hoe dat moet? Mijn eigen pogingen verzandden. Het lukt me niet een werkende code te vinden.

Mvg, Visara
 
Erg onhandige constructie; als in tabel maar twee waarden mogen komen (“x” of “?”) dan is een Ja/Nee veld toch veel beter? Nog afgezien van het feit dat een ? Een beschermd teken is dus buitengewoon onhandig om dat in een veld te gebruiken.
Er vanuit gaande dat je mijn (zeg nou zelf: fantastische :)) tip opvolgt, krijg je zoiets:
Code:
INSERT INTO Tabel2 ( omschrijving, bestelnummer, status )
SELECT omschrijving, bestelnummer, ([status] = ‘Actief’) FROM Tabel1
 
Bedankt voor uw fantastische reactie!

Wist niet dat '?' een beschermd teken is. Bij deze :)

Als ik deze -1/0 wil weergeven in een formulier als "" (niks, blanco) of X, kan ik dat dan beter via de query voor het formulier regelen?
Deze info staat alleen ter info in het formulier, de gebruiker kan het niet bewerken.

U schreef: "een Ja/Nee veld is toch veel beter?" Als de gebruiker er iets mee moet doen, dan denk ik 'Ja'.
In dit geval wordt deze data gebruikt om de gebruiker in een continues form bij elke record te laten zien of het product 'Non actief' is.
Er passen zo'n 25 regels in het scherm. Om nou bij elke regel Ja of Nee weer te geven wordt erg druk. Liever 'blanco' en X.
 
Laatst bewerkt:
Je laat toch selectievakjes zien? Die zijn echt kleiner als tekstvakken, en veel visueler. Dus duidelijker. Ik zou het wel weten :). Overigens is het een hele kleine moeite om in een query een Ya/Nee veld te laten zien als niks of een “x”. Doe je met een IIf in je query. Maar ik zou dat zelf dus niet doen. Je gebruikt een Boolean gegeven, gebruik dat dan ook als zodanig.
 
Welke manier prettig werkt hangt ook wel af van de manier van gebruiken, denk ik.
In dit geval heb je als gebruiker een bestelling van +-200 regels gemaakt die je in een formulier naloopt voordat je het verzend. Je wil door die bestelling heen scrollen en de onregelmatigheden bekijken. (ik heb ook sorteerknopjes gemaakt om de gebruiker daarmee te helpen)
Van die 200 regels (weergegeven in een continues form) zijn bijvoorbeeld 3 artikelen gesaneerd. Ik wil dan geen verticale kralenketting van 200 selectievakjes door mijn scherm om die 3 artikelen er uit te kunnen vissen. Ik heb dan liever 3 keren een dikke zwarte X. Of ik maak een veld rood, moet ik nog even over nadenken en uitproberen.

In de query voor het formulier heb ik een Iif-formule gemaakt die, indien status=0, een "X" geeft.

Dank voor het meedenken!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan