MySQL的例行:MySQL的常規INSERT語句
DELIMITER $$
CREATE DEFINER=`root`@`%` PROCEDURE `INSERT_Employee_Info`(
IN lname varchar(64),
IN fname varchar(64),
IN mname varchar(64)
)
BEGIN
INSERT INTO tbl_employee_info(lname, fname, mname)
VALUES(lname, fname, mname);
END
有時,值lname的,FNAME和MNAME可能包含什麼,但不爲空,我想插入語句插入NULL
,而不是''
值。
我記住以下幾點,但我很懷疑它會工作:
INSERT INTO tbl_employee_info(lname, fname, mname)
VALUES(CASE lname WHEN '' THEN NULL ELSE lname END,
CASE fname WHEN '' THEN NULL ELSE fname END,
CASE mname WHEN '' THEN NULL ELSE mname END);
當您嘗試時發生了什麼? – Barmar
你的sql語法中有錯誤 –
@paynet,因爲你沒有用括號括住'case'語句,請參閱下面的答案。 –