Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/65createindex.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ yy.CreateIndex.prototype.toString = function () {
// CREATE TABLE
yy.CreateIndex.prototype.execute = function (databaseid, params, cb) {
// var self = this;
var db = alasql.databases[databaseid];
var db = alasql.databases[this.table.databaseid || databaseid];
var tableid = this.table.tableid;
var table = db.tables[tableid];
var indexid = this.indexid;
Expand Down
52 changes: 52 additions & 0 deletions test/test2184.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
if (typeof exports === 'object') {
var assert = require('assert');
var alasql = require('..');
// var DOMStorage = require("dom-storage");
// global.localStorage = new DOMStorage("./test390.json", { strict: false, ws: '' });
}

/*
This tests qualified table names in CREATE INDEX
*/

describe('Test 2184 CREATE INDEX with qualified table name', function () {
it('1. CREATE DATABASE', function (done) {
alasql('CREATE DATABASE test403');
done();
});

it('2. Create table and index before insert with qualified name (no USE)', function (done) {
alasql('CREATE TABLE test403.one (a INT)');
alasql('CREATE INDEX xone ON test403.one (a)');
alasql('INSERT INTO test403.one (a) VALUES (100), (200), (300)');
done();
});

it('3. Create table and index after insert with qualified name (no USE)', function (done) {
alasql('CREATE TABLE test403.two (a INT)');
alasql('INSERT INTO test403.two (a) VALUES (100), (200), (300)');
alasql('CREATE INDEX xtwo ON test403.two (a)');
done();
});

it('4. Create unique index with qualified name (before insert)', function (done) {
alasql('CREATE TABLE test403.three (a INT)');
alasql('CREATE UNIQUE INDEX xthree ON test403.three (a)');
alasql('INSERT INTO test403.three (a) VALUES (100), (200), (300)');
done();
});

it('5. REINDEX from test403 database', function (done) {
alasql('USE test403');
var res = alasql('REINDEX xone');
assert(res == 1);
var res = alasql('REINDEX xtwo');
assert(res == 1);
done();
});

it('99. DROP DATABASE', function (done) {
alasql('DROP DATABASE test403');
done();
});
});
Loading