当前位置: 首页 > 知识库问答 >
问题:

雪花存储过程中的最大JavaScript字符串大小

晏炳
2023-03-14

Snowflake文档指出,VARCHAR列仅限于16 MB未压缩的https://docs.Snowflake.net/manuals/sql-reference/data-types-text.html#data-types-for-text-strings

VARCHAR holds unicode characters.  The maximum length is 16 MB (uncompressed). The maximum number of Unicode characters that can be stored in a VARCHAR column depends on whether the characters are singlebyte or multibyte:

Singlebyte
16,777,216

Multibyte
Between 8,388,608 (2 bytes per character) and 4,194,304 (4 bytes per character)

If a length is not specified, the default is the maximum length.

Snowflake文档指出,VARCHAR数据会自动转换为JavaScript字符串数据类型。
https://docs.Snowflake.net/manuals/sql-reference/stored-procedures-usage.html#sql-and-javaScript-data-type-mapping

共有1个答案

关宏毅
2023-03-14

JavaScript最多可处理16MB:

CREATE OR REPLACE FUNCTION MaxParam("STRING" VARCHAR)
RETURNS STRING LANGUAGE JAVASCRIPT STRICT IMMUTABLE AS
'return STRING;';

CREATE TABLE T AS SELECT LPAD('111', 16777216, '0') STR;
SELECT MaxParam(STR) FROM T;
=> 0000000000000000000000000000000000000...

SELECT MaxParam(LPAD('111', 16777217, '0'));
=> String '(padded string)' is too long and would be truncated
(Error message is from LPAD, not JS)
 类似资料:
  • 1选定列的参数(选定的筛选器/下拉属性或从UI发送的列名) 2 dynamic where子句的参数,用于为点1中选择的类似下拉列表值准备 从视图中获取数据,并以这种方式检索结果 注意:在这一点上没有要求显示特定于某个用户的数据。同样忽略上面代码中的参数插值部分 是否存在任何数据完整性问题,不同的用户将看不到UI上更新的值(为了提供更多的上下文,从此过程中的视图中提取数据,并且该视图数据在应用程序

  • 我在雪花存储过程中使用反勾来构建下面的插入查询,它在激发sql时工作得很好 我还想将此查询记录到日志表中,由于TO_DATE函数'yyyymmdd'中的单引号,该查询失败了: 尝试使用javascript函数replaceAll()将单引号替换为2个单引号('->''),但雪花存储过程中不支持此函数。有人能建议如何在插入日志条目时消除此错误吗

  • 在下面的示例中,存储过程工作,而不工作。两者之间唯一的区别是SQL语句的字母大小写。

  • 本文向大家介绍字符串中最大和最小的单词-JavaScript,包括了字符串中最大和最小的单词-JavaScript的使用技巧和注意事项,需要的朋友参考一下 我们需要编写一个JavaScript函数,该函数接受字符串并返回一个带有两个字符串值的数组,它们应分别是字符串中最小和最大的单词。 例如- 如果字符串是- 那么输出应该是- 因此,让我们为该功能编写代码 示例 以下是代码- 输出结果 控制台中的

  • 关于如何使用传递的参数的任何线索。