是否可以为用户变量分配BIT数据类型?

时间:2016-08-28 00:44:09

标签: mysql sql

基于documentation

  

可以从一组有限的数据类型中为用户变量分配值:整数,十进制,浮点,二进制或非二进制字符串或NULL值。

如您所见,不支持用户变量BIT数据类型。对?好的,我有这个代码:

BEGIN
    SELECT active INTO @active FROM users WHERE id = new.user_id;
    IF (IFNULL((@active & b'100' > 0), 0) < 1) THEN
        SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = "You cannot vote";
    END IF;
END

注意: active列为BIT(10)

你知道,我的代码令人惊讶地工作了......为什么?我的意思是MySQL如何将@active变量视为BIT数据类型?

0 个答案:

没有答案