webSql的基本使用,打开数据库,创建库,创建表,数据基本的增删改查
openDatabase(‘数据库名’, ‘版本号’, ‘数据库描述’, ‘设置数据的大小’, ‘回调函数’)
executeSql() 有4个参数
- 1)表示查询的字符串,使用的SQL语言是SQLite 3.6.19。(必选)
- 2)插入到查询中问号所在处的字符串数据。(可选)
- 3)成功时执行的回调函数。返回两个参数:tx和执行的结果。(可选)
- 4)一个失败时执行的回调函数。返回两个参数:tx和失败的错误信息。(可选)
创建的数据库就存在本地,路径如下:
- C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default\databases\http_localhost_* 。
- 创建的是一个sqllite数据库,可以用SQLiteSpy打开文件,可以看到里面的数据。SQLiteSpy是一个绿色软件,可以百度一下下载地址或SQLiteSpy官方下载SQLiteSpy。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>webSql的基本使用 - aixiaodou.cn</title>
</head>
<body>
<div>dsa</div>
<div id="msg"></div>
</body>
</html>
<script type="text/javascript">
var db = openDatabase('mydb', '1.0', '用户表', 2 * 1024 * 1024, function () {});
if (!db) {
console.log("数据库创建失败!");
}
function createTable(table, column) {
db.transaction(function (tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS ? ?', [table, column])
})
}
function delTable() {
db.transaction(function (tx) {
tx.executeSql('DROP TABLE user');
})
}
function insertData({id, userName, phone}) {
db.transaction(function (tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS user (id unique, userName, phone)')
tx.executeSql('INSERT INTO user (id, userName, phone) VALUES (?, ?, ?)', [id, userName, phone])
})
}
function deleteData(id) {
db.transaction(function (tx) {
tx.executeSql('DELETE FROM user WHERE id = ?', [id]);
});
}
function updateData(id, userName) {
db.transaction(function (tx) {
tx.executeSql('UPDATE user SET userName=? WHERE id=?', [userName, id]);
});
}
function queryTableData() {
db.transaction(function (tx) {
tx.executeSql('SELECT * FROM user', [], function (tx, results) {
console.log(results.rows)
var len = results.rows.length, i;
msg = '<p>查询记录条数:' + len + '</p>'
document.querySelector('#msg').innerHTML = msg
}, null)
})
}
queryTableData()
</script>