2014-09-24 49 views
0

我們正在使用cordova 3.5.0開發應用程序。websql數據庫已用於存儲結果。我們通過使用如下所示的JSON形式的goole端點以及sql語句,從Google應用引擎服務器 獲取數據。在Android-4.4上檢測到Web Sql語法錯誤但未低於4.4版本

"dropLocalEntity": "DROP TABLE IF EXISTS Tenant", 
"createLocalEntityQuery": "CREATE TABLE IF NOT EXISTS Tenant (companyName TEXT, tenantId TEXT, branchId REAL)", 
"insertLocalEntityQuery": "INSERT INTO Tenant (companyName, tenantId, branchId) VALUES ('a11','a11:[email protected]',5649391675244544),('SARAH FOODS PVT LTD','SARAH FOODS PVT LTD:[email protected]',2299139),('AYEE EDU TECH PRIVATE LTD','AYEE EDU TECH PRIVATE LTD:[email protected]',2001),('NCOPL','NCOPL:[email protected]',7001),('CP Real Estate Pvt ltd','CP Real Estate Pvt ltd:[email protected]',5001),('Elite ProCon Solutions','Elite ProCon Solutions:[email protected]',6001),('Team Works Technologies','Team Works Technologies:[email protected]',5001),('DFCPL','DFCPL:[email protected]',94001),('PASUPATI ADVISORY PVT LTD','PASUPATI ADVISORY PVT LTD:[email protected]',6001),('DEF','DEF:[email protected]',5001),('Kudos Site','ENGINEERS ASSOCIATES:[email protected]',241003),('ENGINEERS ASSOCIATES','ENGINEERS ASSOCIATES:[email protected]',5865619656278016),('Pepper Foods','Pepper Foods:[email protected]',2002),('Viswalam','Viswalam:[email protected]',49104),('Vishnu Chakara Cement','Vishnu Chakara Cement:[email protected]',5144752345317376)", 
"fetchLocalEntityQuery": "SELECT * FROM Tenant", 
"kind": "listtenantendpoint#resourcesItem", 
"etag": "\"BFH8YzudjMA4FocHBq774qlnFyw/O1ihN9-TWxWWwYKaN99yGSokHUU\"" 

我們在移動端(客戶端)獲取上述數據並形成表格並正確渲染以顯示數據。隨着所有的事情,我的應用程序運行良好。 這裏的問題是,我能夠在Android手機(android-4.2)上顯示我的數據,但無法呈現移動數據(android-4.4)。 以下內容顯示在android-4.4手機上。

無法準備的語句(1近 「」:語法錯誤)

我的數據庫的開場白是:

var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000); 
+0

insert語句是不正確的。您在單個插入語句中插入多個記錄。即插入租戶(列名...)VALUES(記錄值... 1),(記錄值... 2),(記錄值... 3)'。您可以在帶有VALUES選項的插入語句中一次只插入** ONE **記錄。即插入到租戶(列名...)VALUES(記錄值... 1)' – frank 2014-09-24 07:50:46

+0

,但這是工作正常與Android 4.2移動 – 2014-09-24 07:57:43

+0

理論上它不應該在4.2。無論如何,您可以使用單個插入來測試您的代碼,以確認錯誤是多個值的bcos。 – frank 2014-09-24 08:56:29

回答

0

正如你可以使用UNION子句插入替代多個值。

使用UNION:

INSERT INTO `mytable` 
(`col1`, `col2`) 
SELECT 1, 'aaa' 
UNION ALL 
SELECT 2, 'bbb'