UNPKG

alasql

Version:

AlaSQL.js - JavaScript SQL database library for relational and graph data manipulation with support of localStorage, IndexedDB, and Excel

60 lines (41 loc) 1.49 kB
// // tselect01.js // Test for select // if(typeof exports === 'object') { var assert = require("assert"); var alasql = require('..'); }; describe('Test 130 - UPDATE', function(){ it('UPDATE without conditions', function(done) { var db = new alasql.Database(); db.exec('CREATE TABLE test (a int, b int)'); db.exec('INSERT INTO test VALUES (1,1)'); db.exec('INSERT INTO test VALUES (1,7)'); db.exec('INSERT INTO test VALUES (2,2)'); db.exec('INSERT INTO test VALUES (3,3)'); var res = db.exec('UPDATE test SET a = (b+100)'); assert.equal(4, res); assert.equal(101, db.tables.test.data[0].a); done(); }); it('UPDATE WHERE with conditions', function(done) { var db = new alasql.Database(); db.exec('CREATE TABLE test (a INT, b INT, c INT)'); db.exec('INSERT INTO test VALUES (1,10,100)'); db.exec('INSERT INTO test VALUES (2,20,200)'); db.exec('INSERT INTO test VALUES (3,30,300)'); db.exec('INSERT INTO test VALUES (4,40,400)'); db.exec('INSERT INTO test VALUES (5,50,500)'); var res = db.exec('UPDATE test SET a = c WHERE b<=30'); // console.log(res); // console.log(db.tables.test.recs); assert.equal(3, res); assert.equal(100, db.tables.test.data[0].a); assert.equal(200, db.tables.test.data[1].a); assert.equal(300, db.tables.test.data[2].a); assert.equal(4, db.tables.test.data[3].a); assert.equal(5, db.tables.test.data[4].a); done(); }); });