2015-10-02 14 views
5

Ich versuche, die Daten von Firebird DB mit der sequentiellen Auswahl Option zu bekommen. Ich möchte die ersten 500 Zeilen erhalten, wie Sie in meinem Code sehen. Und zum Testen erhöhe ich 'k' für jede 'Zeile' und protokolliere 'k' und 'md5' an der Konsole.Node-Firebird sequentiell wählen

Wenn ich meinen Code ausführe, gibt es mir eine zufällige Anzahl von Zeilen. Aber die Anzahl der Zeilen sind immer mehr als 500.

Wie kann ich dieses Problem lösen? Irgendwelche Vorschläge?

var Firebird = require('node-firebird'); 
var md5 = require('md5'); 
var options = {}; 
//options.host = '127.0.0.1'; 
//options.port = 3050; 
options.database = '/Users/bla/mydb.FDB'; 
options.user = 'SYSDBA'; 
options.password = 'masterkey'; 
var pool = Firebird.pool(10, options); 
var k = 0; 
pool.get(function (err, db) { 

    if (err) 
    throw err; 
    db.sequentially('SELECT FIRST 500 SOME QUERY', function (row, index) { 
    k = k + 1; 
    console.log(k + ' => ' + md5(JSON.stringify(row)) + '\n'); 
    }, function (err) { 
    db.detach(); 
    }); 
}); 
+0

umfassen @ain es mich nicht geben 500 zufällige Zeilen, es gibt mir eine zufällige Anzahl von Zeilen. Zum Beispiel 787 Zeilen oder 800 Zeilen. –

+0

Entschuldigung, die Frage wurde falsch gelesen :( – ain

Antwort

0

von der Version von Firebird abhängig „wählen Sie zuerst n“ könnte einen Fehler, wenn Sie auch eine „order by“ -Klausel

+1

Eigentlich war der Fehler auf Node-Firebird-Treiber. –

Verwandte Themen