更改hsqldb中的varbinary长度

时间:2018-06-19 21:26:30

标签: hsqldb

如果我使用VARBINARY(16)创建了一个表,后来又决定需要存储更长的二进制数据,那么我可以安全地更改现有表吗?还是我什至需要? hsqldb在内部是否在优化长度存储,是否需要重写所有现有数据?

文档不涉及这种情况。

1 个答案:

答案 0 :(得分:1)

对于HSQLDB,用于更改表的所有SQL语句都是安全的。使用VARBINARY和VARCHAR,您需要执行ALTER COLUMN语句以增加最大长度。例如:

ALTER TABLE thetable ALTER COLUMN thecolumn SET DATA TYPE VARBINARY(32)

增加长度时,该语句立即执行。减少时,它将检查所有数据,并且如果任何现有数据长于新的最大值,则不会更改限制。

http://hsqldb.org/doc/guide/databaseobjects-chapt.html#dbc_table_manupulation