2014-02-05 32 views
0

我想在Worklight SQL適配器中使用「%」字符。如何在Worklight SQL適配器中使用「%」字符?

這是我的代碼:

var selectStatement = WL.Server.createSQLStatement("SELECT * FROM studentinfo WHERE studentinfo.sname like '%?%'"); 
function getStudentInfos(param1) { 

    return WL.Server.invokeSQLStatement({ 
     preparedStatement : selectStatement, 
     parameters : [param1] 
    }); 
} 

但它的錯誤:

{ 
    "errors": [ 
     "Runtime: Parameter index out of range (1 > number of parameters, which is 0)..\nPerformed query:\nSELECT * FROM studentinfo WHERE studentinfo.sname like '%?%'" 
    ], 
    "info": [ 
    ], 
    "isSuccessful": false, 
    "warnings": [ 
    ] 
} 

我應該如何在工作燈SQL適配器使用 「%」 字符?

+0

你想搜索 「?」 ? –

+0

不,「?」是一個param1.refer(http://public.dhe.ibm.com/software/mobile-solutions/worklight/docs/v610/04_03_SQL_adapter_-_Communicating_with_SQL_database.pdf) – Jason

回答

0

你的代碼是

("SELECT * FROM studentinfo WHERE studentinfo.sname like '%?%'"); 

的「%」符號是用來定義之前和模式之後的通配符(失蹤字母)。在「%」標誌後面提及你想要搜索的慾望詞。

3

使用此:

var selectStatement = WL.Server.createSQLStatement("SELECT * FROM studentinfo WHERE studentinfo.sname like ?"); 
function getStudentInfos(param1) { 

    return WL.Server.invokeSQLStatement({ 
     preparedStatement : selectStatement, 
     parameters : [new String("%" + param1 + "%")] 
    }); 
} 
相關問題