alasql

alasql - Data source number 0 in undefined ,simple Javascript object as source then query, gives this error


<script src="https://cdn.jsdelivr.net/alasql/0.3/alasql.min.js"></script>


var ProductList = JSON.parse('[{"ProductID":1,"ProductName":"Shoes"},{"ProductID":2,"ProductName":"Chocolate"}]');


alasql("CREATE TABLE Products (ProductID INT, ProductName string)");

alasql.tables.Products = ProductList; // when inspect, the table is present

var x = alasql("SELECT * FROM Products order by ProductID"); //throws error 

enter image description here


Solution

  • I was able to solve it.

    db.tables.Products.data - I was missing the data.

    Parsing was not required.

    var db = new alasql.Database();
    
    db.exec("CREATE TABLE Products (ProductID INT, ProductName string)");
    
    var ProductList = [{"ProductID":1,"ProductName":"Shoes"},{"ProductID":2,"ProductName":"Chocolate"}];
    
    db.tables.Products.data = ProductList;
    
    var res = db.exec("SELECT * FROM Products");