可以传递给SQL * Plus的命令行参数的最大长度?

我正在从Linux C Shell调用SQL * Plus:

sqlplus username/password @file.sql var1 var2 var3

它受操作系统支配吗?在这种情况下:

Linux version 2.6.9-100.ELsmp (mockbuild@x86-010.build.bos.redhat.com) (gcc

version 3.4.6 20060404 (Red Hat 3.4.6-11)) #1 SMP Tue Feb 1 12:17:32 EST 2011

实证测试得出以下结果:

  • 5200个字符的命令行参数给出了错误:“单词太长”。
  • 然后,有1300个字符产生了SQL * Plus错误,“字符串开头“(000796384 …”)太长。最大大小为239个字符。”
  • 我一度跌破239个字符,一切都变好了。

我想我会用它sqlldr来克服这个问题。

回答:

尝试: xargs --show-limits

Your environment variables take up 2446 bytes

POSIX upper limit on argument length (this system): 2092658

POSIX smallest allowable upper limit on argument length (all systems): 4096

Maximum length of command we could actually use: 2090212

Size of command buffer we are actually using: 131072

每个参数没有限制,但是整个命令行的总长度没有限制。在我的系统(Fedora 15 / zsh)中,它接近2Mb。(第4行)。

以上是 可以传递给SQL * Plus的命令行参数的最大长度? 的全部内容, 来源链接: utcz.com/qa/406740.html

回到顶部