我正在使用SQL Developer 4.2.0.17.089 我需要使用包含&#34 ;;"的字符串执行更新。 具体做法是:
update <table_name> set <field_name>='....
<style>
.SectionHeading {
font-size: 12pt;
font-weight: bold;
font-family:Calibri;
color:#548DD4;
}
</style>
....'
where <condition>;
无论我做什么,我都会得到 SQL错误:ORA-01756:引用的字符串未正确终止 在第一个分号之后
它完全适用于SQL Developer 4.1.3.20。
有什么想法吗?
答案 0 :(得分:0)
这似乎是SQL Developer 4.2中的一个错误(尽管我找不到任何与MoS或SD foum相关的内容);它也适用于17.2。由于sqlterminator
已经过时并被忽略,我在4.2中可以看到解决它的唯一方法是将你的语句包含在一个虚拟的匿名PL / SQL块中 - 它不会被分号混淆在PL / SQL上下文中知道它:
begin
-- start real code
update <table_name> set <field_name>='....
<style>
.SectionHeading {
font-size: 12pt;
font-weight: bold;
font-family:Calibri;
color:#548DD4;
}
</style>
....'
where <condition>;
-- end real code
end;
/
哪个不理想。如果你能够的话,更好的解决方案可能是upgrade to the current version。