- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我在一个oracle脚本中看到了这一行
SELECT COUNT(*) INTO version1 FROM &1..xxdt WHERE version = 3310;
我不明白 &1..
部分。我认为xxdt是表名,那么它前面的&1..
是什么东西呢?
最佳答案
&1
提示输入用户输入的值。请注意输入值 mytable
的方式被替换为 &1
下面:
SQL> SELECT COUNT(*) FROM &1 WHERE col1 = 12;
Enter value for 1: mytable
old 1: SELECT COUNT(*) FROM &1 WHERE col1 = 12
new 1: SELECT COUNT(*) FROM mytable WHERE col1 = 12
COUNT(*)
----------
0
点 ( .
) 将点后面的每个非空格字符附加到输入的值。注意 table
的值在点附加到输入的 my
之后:
SQL> SELECT COUNT(*) FROM &1.table WHERE COL1 = 12;
Enter value for 1: my
old 1: SELECT COUNT(*) FROM &1.table WHERE COL1 = 12
new 1: SELECT COUNT(*) FROM mytable WHERE COL1 = 12
COUNT(*)
----------
0
&1..xxdt
中的两个点不是特殊的运算符(operator)。第一个点表示追加;第二个点是文字。它看起来像 &1
在您的示例中,用于提示输入架构/所有者名称。请注意下面我是如何输入 ed
的和 &1..mytable
转化为ed.mytable
:
SQL> SELECT COUNT(*) FROM &1..mytable WHERE COL1 = 12;
Enter value for 1: ed
old 1: SELECT COUNT(*) FROM &1..mytable WHERE COL1 = 12
new 1: SELECT COUNT(*) FROM ed.mytable WHERE COL1 = 12
COUNT(*)
----------
0
附录:David Aldridge 提出的一个很好的建议,包括对 SET DEFINE
的快速解释。 ,这与变量替换密切相关。开始...
上面的替换是由 SQLPlus 完成的,它的行为可以使用 SET DEFINE
来控制。 :
SET DEFINE ON
将允许替换并使用定义的替换字符。这通常是 SQLPlus 的默认值,当我运行上面的查询时就是这种情况。SET DEFINE <char>
设置替换字符。符号 ( &
) 是通常的默认值。 SQLPlus 将只接受非字母数字、非空格字符作为替换字符。请注意,在使用 Oracle 的十多年来,我从未更改过此值。SET DEFINE OFF
将停止替换。如果您需要在查询或过程中使用实际的文字 & 符号,请使用它,因为无论您将它放在何处,包括在字符串中,SQLPlus 都会将 & 符号视为替换字符。关于database - 替换变量语法 '&1..' 如何用于用户/模式定界符 (“.”),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17051928/
我有一列data.frame,其中一些空格应该作为分隔符,而某些只是一个空格。 #input data dat <- data.frame(x=c("A 2 2 textA1 textA2 Z1",
所以我试图分解一个包含答案列表的字符串。 例如:答案:1. 梳理。 2.拇指。 3.坟墓(地下墓穴)。 4. 子宫。 5.面包屑。 6. 炸弹。 7. NumPy 。 8.沉着冷静。 9. 屈服。 有
我有包含多个查询的文件。如何使用 DELIMITER 将它们分开?我像在 mysql 中一样尝试过,但它没有编译: DELIMITER % CREATE SEQUENCE logins_seq I
这个问题在这里已经有了答案: Does -* have any special meaning in regular expression? (1 个回答) 关闭 8 年前。 我有一个像 22 +
我正在尝试使用 sscanf 解析以下字符串: query=testword&diskimg=simple.img 如何使用 sscanf 解析出“testword”和“simple.img”? ss
我正在尝试解析一个文本文件,该文件每行包含可变数量的单词和数字,如下所示: foo 4.500 bar 3.00 1.3 3 foo bar 如何读取由空格而不是换行符分隔的文件?有什么方法可以设置
这是我的代码: With ad.Tables(2) For i As Integer = 0 To .Rows.Count - 1 If .Rows(i)("name") &
我正在排队,例如 数组大小:4 来自 cin,我想首先检查字符串是否正是这个,然后提取整数。 我找到了读取字符串并提取整数的方法: string start; getline (cin
我正在尝试读取以这种形式编写的文本文件: AB523:[joe, pierre][charlie][dogs,cat] ZZ883:[ronald, zigomarre][pele]
我是 PIG 的新手,有人可以帮助我如何加载一个包含多个字符(在我的例子中为“^^”)作为列分隔符的文件。 例如我有以下列的文件aisforapple^^bisforball^^cisforcat^^
var wrapped_string = "shouldn't this\ work?" JSLint给出了严重的擒纵机构错误。 那么我们如何在 JavaScript 中执行heredoc呢?我有一个
问题:我需要读取 CSV 文件。我使用 FileHelpers 库来实现这一点。 问题是我需要一个动态定界符(用户定义),这意味着任何东西都可以是定界符(逗号、分号、制表符、换行符,以及其他任何东西)
我试图读入一个由 powershell 执行的 sql 文件。一切正常,除了 powershell 因单词定界符而抛出错误。所以我的问题是如何在我的 sql 文件中使用定界符(我只能对 sql 文件进
我需要能够通过 DBI 发出“创建触发器”。我似乎无法使分隔符命令正常工作。任何人都可以找到一种方法来完成这项工作吗? 代码: use strict; use DBI; my $dbargs = {m
我知道我可以使用 Mustache.tags('[[', ']]'); 更改默认分隔符 我深入研究了源代码,但找不到也不知道如何更改不转义 HTML 定界符,默认情况下为 {{{ }}}。感谢您的帮助
我正在尝试获取 std::string 值并将其用作 std::getline() 函数中的分隔符但无论我做什么,编译器都会给我错误。这就是我想要做的: std::stringstream ss(s)
我正在尝试实现我自己的 beanstalkd 客户端作为学习围棋的一种方式。 https://github.com/kr/beanstalkd/blob/master/doc/protocol.txt
我正在编写一个显示代码和输出的样式指南。它目前的结构使得代码只需要描述一次,并以其原始版本和解释版本显示,如下所示: #{ image_tag 'image.png' } PLACE_THE
是否可以将默认字段分隔符从逗号更改为其他字符,例如用于导出的 '|'? 最佳答案 下面是一个使用选项卡的示例。 到一个文件: CSV.open("myfile.csv", "w", {:col_sep
我是一名优秀的程序员,十分优秀!