Lovefield: Google用纯JS开发的跨浏览器,SQL似的关系查询引擎

jopen 9年前

Lovefield是一个纯JavaScript开发的关系查询引擎。它还提供在浏览器端持久化数据的功能,比如使用IndexedDB在本地存储数据。它还提供类似于SQL的语法。支持Chrome 37+, Firefox 31+, IE 10+, and Safari 5.1+等浏览器。

<!doctype html>  <html>    <head>      <meta charset="utf-8" />      <title>Minimal example of using Lovefield</title>      <script src="lovefield.min.js"></script>    </head>    <body>      <script>    var schemaBuilder = lf.schema.create('todo', 1);    schemaBuilder.createTable('Item').      addColumn('id', lf.Type.INTEGER).      addColumn('description', lf.Type.STRING).      addColumn('deadline', lf.Type.DATE_TIME).      addColumn('done', lf.Type.BOOLEAN).      addPrimaryKey(['id']).      addIndex('idxDeadline', ['deadline'], false, lf.Order.DESC);    var todoDb;  var item;  schemaBuilder.connect().then(function(db) {    todoDb = db;    item = db.getSchema().table('Item');    var row = item.createRow({      'id': 1,      'description': 'Get a cup of coffee',      'deadline': new Date(),      'done': false    });      return db.insertOrReplace().into(item).values([row]).exec();  }).then(function() {    return todoDb.select().from(item).where(item.done.eq(false)).exec();  }).then(function(results) {    results.forEach(function(row) {      console.log(row['description'], 'before', row['deadline']);    });  });        </script>    </body>  </html>


项目主页:http://www.open-open.com/lib/view/home/1431171431929