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>