gpt4 book ai didi

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

转载 作者:IT老高 更新时间:2023-10-28 12:34:50 25 4
gpt4 key购买 nike

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

sqlplus 用户名/密码@file.sql var1 var2 var3

如果我将字符串作为 var1 传递,这个字符串可以有多长?

它受操作系统管理吗?在这种情况下:

Linux 版本 2.6.9-100.ELsmp (mockbuild@x86-010.build.bos.redhat.com) (gcc 版本 3.4.6 20060404 (Red Hat 3.4.6-11)) #1 SMP 2011 年 2 月 1 日星期二 12:17:32 EST

更新:实证测试得出以下结果:

  • 5200 个字符的命令行参数给出了错误“字太长”。
  • 1300 个字符然后产生 SQL*Plus 错误,“字符串开头“(000796384...”太长。最大大小为 239 个字符。”
  • 当我得到 239 个字符以下时,一切都很好。

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

最佳答案

尝试:xargs --show-limits </dev/null

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 行)。

关于linux - 可以传递给 SQL*Plus 的命令行参数的最大长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6846263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com