DataGrip:使用默认 UUID 将数据添加到 Snowflake 中的 Table

DataGrip: Add Data to a Table in Snowflake with a UUID as default

第一个数据库是 Snowflake。

DataGrip 似乎为具有 default-value 的列生成带有默认值的 INSERT-Statements,而不是忽略这些列。一个例子:首先我创建了一个简单的 table 有 2 列。 UUID 默认有 UUID_STRING()TST_CHAR 只是一个字符串。

   CREATE TABLE Tst_tbl (
     UUID varchar(36) default uuid_string() not null
    ,TST_CHAR varchar)

如果我尝试通过 DataGrip 插入值,我会收到错误消息:

问题是,列 UUID 在 INSERT 期间没有被省略,而是在带有 DEFAULT 的语句中。这在 UUID-Columns.

的 Snowflake 中不起作用

我能以某种方式改变这种行为吗?如何将 DataGrip 中的数据插入 Snowflake-DB,其中一列的默认值为 uuid_string()

同样的事情在 DBeaver 中起作用。 DBeaver 忽略具有默认值的列。

这是一个错误,我们会修复它:https://youtrack.jetbrains.com/issue/DBE-15031