vertica是否支持将类型从int更改为boolean?

时间:2016-02-10 08:48:43

标签: vertica

我使用的是vertica 7.1版本。想要将列类型从整数更改为布尔值。但无法做到这一点。改变后可以使用类型转换吗?如果是的话怎么样?

testdb=> create table fruits (id int, name varchar(5));
CREATE TABLE

testdb=> insert into fruits values (1,'apple');
 OUTPUT 
--------
      1
(1 row)

testdb=> insert into fruits values (1,'orang');
 OUTPUT 
--------
      1
(1 row)
testdb=> alter table fruits alter column id set data type  boolean;
ROLLBACK 2377:  Cannot convert column "id" from "int" to type "boolean"

testdb=> alter table fruits alter column id set data type  boolean id::boolean;
ERROR 4856:  Syntax error at or near "id" at character 59
LINE 1: ...ble fruits alter column id set data type  boolean id::boolea...

1 个答案:

答案 0 :(得分:0)

Vertica不支持需要存储重组的数据类型更改。在“管理员指南”中,您可以找到支持的数据类型更改列表:

  • 二进制类型 - 扩展和收缩但无法在BINARY和VARBINARY类型之间进行转换。

  • 字符类型 - 允许所有转换,即使在CHAR和VARCHAR

  • 之间也是如此
  • 精确数字类型-INTEGER,INT,BIGINT,TINYINT,INT8,SMALLINT以及scale< = 18和precision 0的所有NUMERIC值都是可互换的。对于NUMERIC数据类型,您不能更改比例,但您可以更改范围(0-18),(19-37)等中的精度。