Changeset: 9ac391944bf2 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9ac391944bf2
Modified Files:
clients/nodejs/Tests/nodetest.js
clients/nodejs/monetdb/mapiclient.js
clients/nodejs/monetdb/package.json
Branch: default
Log Message:
Merge heads.
diffs (52 lines):
diff --git a/clients/nodejs/Tests/nodetest.js b/clients/nodejs/Tests/nodetest.js
--- a/clients/nodejs/Tests/nodetest.js
+++ b/clients/nodejs/Tests/nodetest.js
@@ -112,6 +112,20 @@ conn.query("SELECT '\\\\asdf','\"', '\\\
assert.equal("'", res.data[0][4]);
});
+/* Retrieving escaped characters from the database */
+conn.query('start transaction').
+ query('create table foo(a string)').
+ query("insert into foo values ('\t\n\r\n\tlalala\t\n\r')");
+
+conn.query("select * from foo", function(err, res) {
+ assert.equal(null, err);
+ assert.equal(1, res.rows);
+ assert.equal('\t\n\r\n\tlalala\t\n\r', res.data[0][0]);
+});
+
+conn.query('delete from foo; drop table foo; rollback');
+
+
/* prepared statements can also be re-used */
conn.prepare('SELECT id from tables where name=? and type=? and temporary=?',
function(err, res){
assert.equal(null, err);
diff --git a/clients/nodejs/monetdb/mapiclient.js
b/clients/nodejs/monetdb/mapiclient.js
--- a/clients/nodejs/monetdb/mapiclient.js
+++ b/clients/nodejs/monetdb/mapiclient.js
@@ -386,7 +386,12 @@ exports.parsetuples = _parsetuples = fu
break;
case 'ESCAPED':
state = 'INQUOTES';
- curtok += chr;
+ switch(chr) {
+ case 't': curtok += '\t'; break;
+ case 'n': curtok += '\n'; break;
+ case 'r': curtok += '\r'; break;
+ default: curtok += chr;
+ }
break;
case 'INQUOTES':
if (chr == '"') {
diff --git a/clients/nodejs/monetdb/package.json
b/clients/nodejs/monetdb/package.json
--- a/clients/nodejs/monetdb/package.json
+++ b/clients/nodejs/monetdb/package.json
@@ -1,6 +1,6 @@
{
"name": "monetdb",
- "version": "0.2.5",
+ "version": "0.2.6",
"description": "Connect MonetDB and node.js",
"main": "mapiclient.js",
"author": "Hannes Mühleisen <[email protected]>",
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list