使用用户变量时,如何防止在MySql中插入NULL?

时间:2014-12-18 18:35:49

标签: mysql variables insert

我很难找到一种方法让MySql在insert语句中正确使用用户变量。 MySql正在插入NULL我的变量。以下是我的安装脚本的一部分:

SELECT CONCAT("env=",@env);    //this is irrelevant debugging

SET @OV_PRIMARY_PORT = CASE @env
    WHEN 'agile'      THEN '443'
    WHEN 'fit'        THEN '443'
    WHEN 'pilot'      THEN '443'
    WHEN 'production' THEN '443'
END
;

  // this is irrelevant debugging
SELECT CONCAT("OV_PRIMARY_PORT=",@OV_PRIMARY_PORT);  

INSERT INTO IsensorDefaultConfigItem
    (item_name, application_name, application_component, initialized_time, item_value)
   VALUES ('bubba', 'bubba', 'bubba-primary4', NOW(), @OV_PRIMIRY_PORT);

变量@env是在脚本的前一部分中设置的,SELECT语句只显示我确认其有效的值。包含SELECT的{​​{1}}也是如此....它只是用于调试。

@OV_PRIMARY_PORT - 两个选项都显示变量的设置符合我的预期 Always - 我在Always列的表格中插入了NULL。 该列定义为item_value列,默认为NULL。

0 个答案:

没有答案