Klaus1: node.js und promise-mysql: Wie Fehlerbehandlung?

Beitrag lesen

Das Beispiel da ist leider nicht mit verschachtelten Querys. Bei mir wird auch das "done(err)" vom Beispiel als nicht bekannt angemeckert.

Ich habe es momentan so, allerdings wird bei einem Fehler nicht abgebrochen, sondern die 4. Abfrage wird trotzdem noch versucht, obwohl die Verbindung durch den Fehler bei 3 geschlossen wurde.

mysqlPool.getConnection()
	.then(connection => {
		connection.query('select data from werte where idnr = ?', param1)
		.catch(function(err) {
			console.log("bei 0 Fehler aufgetreten");
		})
		.then( (rows1) => {
			console.log(param1+": "+rows1[0].data);
			return connection.query('select data from werte where idnr = '+param2);
		})
		.catch(function(err) {
			console.log("bei 1 Fehler aufgetreten");
		})
		.then( (rows2) => {
			console.log(param2+": "+rows2[0].data);
			return connection.query('select data from werte where idnr = '+param3);
		})
		.catch(function(err) {
			console.log("bei 2 Fehler aufgetreten");
		})
		.then( (rows3) => {
			console.log(param3+": "+rows3[0].data);
			return connection.query('select data from werte where idnr = '+param4);
		})
		.catch(function(err) {
			console.log("bei 3 Fehler aufgetreten");
			return;
		})
		.then( (rows4) => {
			console.log(param4+": "+rows4[0].data);
		})
		.catch(function(err) {
			console.log("bei 4 Fehler aufgetreten");
		})
	})


Ausgabe:

fertig 23: text 1 70: text 2 bei 3 Fehler aufgetreten bei 4 Fehler aufgetreten