2012-12-13 13 views
6

मैं मुद्दों सीमा के साथ एक findAll क्वेरी के दिए गए डेटा के क्रम निर्धारित करने और ऑफसेट, मैं दस्तावेज़ों में भी पाए उदाहरण कोड का उपयोग कर रहा है: order: 'group DESC' लेकिन यह एक त्रुटि कह फेंक:: Sequelize कैसे सेट दिए गए डेटा के आदेश

Error: SQLITE_ERROR: near "group": syntax error 

यहां पूरा कार्य है।

A_Model.findAll({ 
    offset:req.query.page * req.query.rows - req.query.rows, 
    limit :req.query.rows // TODO: Of course, I put the trailing comma here ;) 
    // TODO: order: 'group DESC' 
    }) 
.success(function (docs) { 
    response_from_server.records = count; 
    response_from_server.page = req.query.page; 
    response_from_server.total = Math.ceil(count/req.query.rows); 
    response_from_server.rows = []; 

    for (item in docs) { 
     response_from_server.rows.push({ 
      id :docs[item].id, 
      cell:[ 
       docs[item].group, 
       docs[item].description, 
       docs[item].path, 
       docs[item].value 
      ] 
     }); 
    } 

    // Return the gathered data. 
    res.json(response_from_server); 
}) 
.error(function (error) {  
    logger.log('error', error); 
}); 

अग्रिम धन्यवाद।

+0

एक एसक्यूएल' समूह by' द्वारा समूह के लिए एक समग्र समारोह को परिभाषित करने की जरूरत है। ऐसा प्रतीत होता है कि आपने एक परिभाषित नहीं किया है। सुनिश्चित नहीं है कि node.js में समेकन और समूह-द्वारा करने की क्षमता भी है। –

+1

@EricLeschinski: आपकी टिप्पणी के लिए धन्यवाद। मैंने हाल ही में 'mongodb' से' SQLite' में स्थानांतरित कर दिया है और वास्तव में 'SQL' के बारे में बहुत कम पता है। क्या आप मुझे एक उदाहरण दिखा सकते हैं? – diosney

+1

@EricLeschinski: बस ध्यान दिया: 'समूह' डेटाबेस में एक कॉलम है। शायद यह एक आरक्षित शब्द है? – diosney

उत्तर

12

"ऑर्डर" -स्ट्रिंग जो आप ढूंढते हैं, सभी विधि को सीक्वेलिज़ में पार्स नहीं किया गया है, केवल एसक्यूएल-इंजेक्शन को रोकने के लिए बच निकला है। "समूह" मेंकुछ SQL-dialects में एक आरक्षित कीवर्ड है, इसलिए क्वेरी चलाने में विफल रहता है।

यह बस `की में" समूह "कॉलम में कहें, इस तरह से काम करने के लिए:

A_Model.findAll({ 
offset:req.query.page * req.query.rows - req.query.rows, 
limit :req.query.rows, 
order: '`group` DESC' 
}) 
+0

ग्रेट! इसने एक जादू की तरह काम किया! धन्यवाद!!! – diosney

+1

इसे PostgreSQL में आज़माया गया और यह बैकक्वॉट के बिना 'ऑर्डर:' समूह डीईएससी 'होना चाहिए। –

+1

महान आदमी इस काम की तलाश में बूम: 0 – Adiii

संबंधित मुद्दे