我有一个特殊的需要在postgresql 9.6中创建一个新的强制转换:
CREATE OR REPLACE FUNCTION boolean_to_float(b boolean) RETURNS float AS $$
SELECT b::int::float;$$ LANGUAGE SQL;
DROP CAST IF EXISTS (boolean as float);
CREATE CAST (boolean AS float) WITH FUNCTION boolean_to_float(boolean) ;
不幸的是,我收到了以下回复:
ERROR: must be owner of type boolean or type double precision
数据库由我正在使用的用户拥有。有可能迫使DROP/CREATE CAST
?
正如错误消息所示:您必须以postgres
用户身份进行连接才能执行此操作。