Web SQL Database
2015-11-13 17:33
330 查看
概要
Web SQL Database,中文一般翻译为“本地数据库”,是一组网页API,网页可以利用来存储数据在数据库中,并通过各种SQL进行查询。Web SQL Database曾经在W3C推荐规范上,但The W3C Web Applications Working Group在2010年已经终止了在该规范上的工作,它最终没成为一个推荐标准。规范工作只所以终止,是因为陷入了一个僵局:所有的实现都基于同一个SQL后端(SQLite),但我们需要更多的独立实现来完成标准化。虽然如此,大部分浏览器还是提供了对这一API的支持(Can I use Web SQL Database?),开发者还是可以利用这种技术。
Web SQL Database API实际上并不是HTML5规范的一部分,它是一个独立的规范,它引入一组APIs,用于通过SQL操作客户端数据库。当我们需要处理大量结构化数据时,就可以利用该技术。
规范文档:http://dev.w3.org/html5/webdatabase/
如何判断是否支持Web SQL Database
使用浏览器访问如下内容的页面可以判断浏览器是否支持Web SQL Database<html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width minimal-ui"> </head> <body> <p id="result"></p> <script> var db = openDatabase('testDB', '1.0', 'Test DB', 2 * 1024 * 1024); if (db != null) document.getElementById("result").innerHTML = ("当前浏览器支持 Web SQL Database"); else document.getElementById("result").innerHTML = ("当前浏览器不支持 Web SQL Database"); </script> </body> </html>
如何使用
主要就是打开数据库、读写数据库可以参考这篇文章: HTML5本地存储——Web SQL Database
更详细的介绍可以参看这篇指南
缺点
Web SQL Database最大的问题在于SQL上,实际上并不存在一种叫做SQL的标准结构化查询语言,我们平常使用的实际上是MS SQL、Oracle SQL、MySQL SQL、postgre SQL或者SQLite SQL(尽管有一个叫做SQL-92的规范,但它基本形同虚设),更进一步,甚至都不存在SQLite SQL,我们使用的实际上是SQLite x.y.z SQL,而这也就是Web SQL Database最大的问题,它无法统一各个浏览器厂商实现的SQL语言,如果你的某条Web SQL查询只能在Chrome上运行,这还能叫做标准吗?参考
HTML5 Storage Wars - localStorage vs. IndexedDB vs. Web SQL相关文章推荐
- HTML5中的本地、WebSql、离线应用存储
- html5 web客户端数据存储
- H5web端存储
- HTML5存储
- Pyside QSqlDatabase: QSQLITE driver not loaded 错误
- 一条金典的SQL查询,结合了 for xml、Pivot、ISNULL 应用示例
- Oracle 工作语句记录
- Oracle安装配置—64位Win7安装配置64位Oracle
- 查看oracle 分区表
- Java使用Pipeline对Redis批量读写(hmset&hgetall)
- 有评论就是我最大的动力~MySQL基础篇完结(存储引擎和图形化管理工具)
- SQL中使用or影响性能的解决办法
- 数据库索引与多表联查
- Oracle 中count(1) 和count(*) 的区别
- JDBC--获取数据库连接
- mysql 索引 导致连接堵塞
- MySql的计算函数
- 从Excel表格导入数据到数据库
- 使用SQLCipher加密数据库
- springMVC+Mybatis构架兼容Redis+Websocet+quartz+echats分布式实现金融K线图及分时图的展现