ref: http://www.cine.idv.tw/Learning/ComputerScience/Database/oracle/AppNotes/appnote-59824f555728-sql-65588ff04e2d4f7f75285305542b-5b57514376845b574e325e386578/
shortie 發現 TOAD 的 SQL Editor ,會把 '&' 字元後的字串,當成變數名稱,造成無法直接將欄位之值,更新為包含 '&' 字元的字串...
問題描述
INSERT INTO DTBDRG (
DRG_CODE, DRG_NHI_CODE, DRG_NAME, DRG_JD_FLAG,
DRG_SPEC, DRG_UNIT, DRG_CHARACTER, DRG_TEST_FLAG, DRG_BRAND)
VALUES (
'1CL100', 'A042448100', 'CLOPINE 100mg (Clozapine) ', ' ',
'100mg ', 'Tab ', ' ', ' ', '瑞士[1.2.2.1&~2]');
在 TOAD 中無法執行。
解決方案
這嚴格說起來並不能算是 PL/SQL 問題,而是 TOAD 的 SQL Editor 模仿 SQL *PLUS 的行為,所導致的結果。
我們只要如 http://www.jlcomp.demon.co.uk/faq/litampersand.html 中所述般地,將字串拆成兩段,把 '&' 字元放在第一段的最後一個位置即可。
也就是把上段 SQL ,做如下之修改即可完成更新的動作:
INSERT INTO DTBDRG (
DRG_CODE, DRG_NHI_CODE, DRG_NAME, DRG_JD_FLAG,
DRG_SPEC, DRG_UNIT, DRG_CHARACTER, DRG_TEST_FLAG, DRG_BRAND)
VALUES (
'1CL100', 'A042448100', 'CLOPINE 100mg (Clozapine) ', ' ',
'100mg ', 'Tab ', ' ', ' ', '瑞士[1.2.2.1&' || '~2]');
這個問題在下面兩本書中,也可以找到相關說明:
1. Oracle PL/SQL Programming, Fourth Edition
2. Oracle SQL*Plus: The Definitive Guide, 2nd Edition
1 則留言:
WynnBET : Situs Slot Online | Casino Online Gambling
WynnBET - https://deccasino.com/review/merit-casino/ Situs Slot Online WynnBet https://octcasino.com/ - Situs Slot Online WynnBet - Situs Slot Online febcasino WynnBet - Situs Slot 바카라사이트 Online WynnBet poormansguidetocasinogambling.com - Situs Slot Online WynnBet - Situs Slot Online
張貼留言