我想在insert语句中插入特殊字符&
。我的插入是:
INSERT INTO STUDENT(name, class_id) VALUES ('Samantha', 'Java_22 & Oracle_14');
如果我尝试运行此查询,我会收到一个弹出窗口,并要求我输入Oracle_14
的值。
如何在oracle db的insert语句中输入&
之类的特殊字符?
答案 0 :(得分:57)
如果您使用的是SQL * Plus或SQL Developer,则需要运行
SQL> set define off;
在执行SQL语句之前。这转变了对替换变量的检查。
这样的SET指令是客户端工具(SQL * Plus或SQL Developer)的指令。它们具有会话范围,因此每次连接时都必须发出指令(如果要更改默认值以将DEFINE设置为OFF,则可以将指令放在客户机的glogin.sql中)。您不会影响数据库中的任何其他用户或会话。
答案 1 :(得分:21)
尝试'Java_22 '||'&'||' Oracle_14'
答案 2 :(得分:12)
Justin的答案是要走的路,但作为一个FYI,您可以将chr()函数与要插入的字符的ascii值一起使用。对于这个例子,它将是:
INSERT INTO STUDENT(name, class_id) VALUES ('Samantha', 'Java_22 '||chr(38)||' Oracle_14');
答案 3 :(得分:3)
你可以简单地逃避&通过跟随一个点。试试这个:
INSERT INTO STUDENT(name, class_id) VALUES ('Samantha', 'Java_22 &. Oracle_14');
答案 4 :(得分:2)
要插入已经获得'&'在里面。使用以下代码。
Set define off;
Begin
INSERT INTO STUDENT(name, class_id) VALUES ('Samantha', 'Java_22 & Oracle_14');
End ;
从Oracle或Toad编辑处按F5。
答案 5 :(得分:0)
我们也可以使用其他方式 例如,插入带有特殊字符'Java_22&的值Oracle_14'进入db我们可以使用以下格式..
'Java_22'||'&'||' Oracle_14'
虽然它认为是3种不同的令牌,但我们没有任何选择,因为oracle文档中提供的转义序列的处理是不正确的。
答案 6 :(得分:0)
如果要在"JAVA"
之类的开头或结尾添加转义字符,请使用:
INSERT INTO STUDENT(name, class_id) VALUES ('Samantha', ''||chr(34)||'JAVA'||chr(34)||'');
答案 7 :(得分:0)
对于特殊字符集,您需要检查UNICODE图表。选择你的角色后,可以使用下面的sql语句,
SELECT COMPOSE('do' || UNISTR('\0304' || 'TTTT')) FROM dual;
-
d的ō强> TTTT
答案 8 :(得分:0)
你也可以像这样使用concat:D
Insert into Table Value(CONCAT('JAVA ',CONCAT('& ', 'Oracle'));
答案 9 :(得分:0)
有三种方法可以做到:
1)只需将SET DEFINE OFF;然后执行insert stmt。
2)简单地通过在单引号内连接保留字并将其连接起来。 例如。选择'Java_22'|| “和; “|| ':'||双 - (:)中的'Oracle_14'是可选的。
3)通过使用CHR功能和连接。 例如。选择'Java_22'||字符(38)||”来自双
的Oracle_14'希望这有帮助!!!
答案 10 :(得分:0)
strAdd = strAdd.replace("&安培;""' ||'&安培;' ||'" );
答案 11 :(得分:-1)
在我的情况下,我需要插入一行文字'请拨打* 001寻求帮助'。 在这种情况下,特殊字符是星号。
通过使用sqlPlus直接插入它失败,错误“SP2-0734:未知命令开始......”
我尝试设置逃脱但没有成功。
为了实现,我使用
在文件系统上创建了一个文件insert.sql@media screen and (max-width:1023px) {
.home-header-slider {
padding-top: 111px;
}
}
@media screen and (max-width:767px) {
.home-header-slider {
padding-top: 0px;
}
}
@media screen and (min-width:1024px) {
.home-header-slider {
padding-top: 76px;
}
}
然后从sqlPlus我执行
<div class="home-header-slider">
<?php nivo_slider( 1 ); ?>
</div>
插入了行。
答案 12 :(得分:-3)
您可以使用反斜杠字符来转义单个字符或符号
'Java_22 \&amp; Oracle_14'
或括号来转义一串字符或符号
'{Java_22&amp; Oracle_14}“