Fügen Sie den Standardwert in die Nicht-Null-Spalte ein, wenn der Wert null ist

8

Ich habe eine Tabelle foo , die eine Spalte NOT NULL mit einem Standard namens message :

hat %Vor%

Es gibt eine gespeicherte Prozedur bar , die in foo :

eingefügt wird %Vor%

Sie können sehen, dass ich bedingt verzweigen muss, damit meine Einfügung den Standardwert verwendet, wenn i_message null ist. Das ist in Ordnung für nur eine Spalte, aber bedenken Sie, wenn foo viel mehr Spalten NOT NULL DEFAULT hätte - die Syntax wäre viel zu unhandlich.

Gibt es eine Syntax, die ich verwenden kann, um anzugeben, dass ein eingefügter Wert auf den Standardwert zurückgesetzt werden soll, wenn null? Ich habe folgendes versucht, aber verständlicherweise Syntaxfehler:

%Vor%     
Paul Bellora 13.12.2012, 20:06
quelle

1 Antwort

19
___ tag123mysql ___ MySQL ist ein freies, relationales Datenbank-Managementsystem (RDBMS), das die strukturierte Abfragesprache (SQL) verwendet. Verwenden Sie dieses Tag NICHT für andere DBs wie SQL Server, SQLite usw. Dies sind verschiedene DBs, die alle SQL verwenden, um die Daten zu verwalten. ___ antwort13867665 ___
%Vor%     
___ qstnhdr ___ Fügen Sie den Standardwert in die Nicht-Null-Spalte ein, wenn der Wert null ist ___ qstntxt ___

Ich habe eine Tabelle %code% , die eine Spalte %code% mit einem Standard namens %code% :

hat %Vor%

Es gibt eine gespeicherte Prozedur %code% , die in %code% :

eingefügt wird %Vor%

Sie können sehen, dass ich bedingt verzweigen muss, damit meine Einfügung den Standardwert verwendet, wenn %code% null ist. Das ist in Ordnung für nur eine Spalte, aber bedenken Sie, wenn %code% viel mehr Spalten %code% hätte - die Syntax wäre viel zu unhandlich.

Gibt es eine Syntax, die ich verwenden kann, um anzugeben, dass ein eingefügter Wert auf den Standardwert zurückgesetzt werden soll, wenn null? Ich habe folgendes versucht, aber verständlicherweise Syntaxfehler:

%Vor%     
___
Wrikken 13.12.2012, 20:10
quelle

Tags und Links