MySQL noob здесь, исходя из многолетнего опыта работы с MS SQL-сервером.
Я создаю представление со столбцом BIT
, который, как я понимаю, является правильным типом для логических столбцов / да-нет.
Значение BIT
вычисляется с помощью простого встроенного оператора IF
.
CREATE VIEW view2 AS
SELECT
t.column2 ,
IF ( t.column2 IS NULL ,
CAST ( 1 AS BIT ) ,
CAST ( 0 AS BIT ) ) AS isColumn2Null
FROM table2 t ;
Но когда я пытаюсь выполнить это, я получаю ошибку:
Incorrect parameters in the call to stored function `CAST`
Почему MySQL выдает здесь ошибку хранимой функции?
Считает ли MySQL, что я определяю хранимую функцию?
Что происходит?
Очевидно, тип BIT
в MySQL работает иначе, чем SQL-Server.
Я пытался CAST ( 1 AS BIT ( 1 ) )
, но это просто дало общий syntax error
без подробностей.