我很难找到一种方法让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。