webstorage示例

    <style>
        .but{
            float: left;
            margin-right: 20px;
        }
        form{
            width: 300px;
        }
        .inp{
            width: 250px;
        }
    </style>

<body>
    <!-- 示例 -->
    <fieldset style="width: 300px;">
        <legend>基于websql的学生信息查询</legend>
            <p>输入信息</p>
            <p>学号</p>
            <input type="number" id="id" class="inp">
            <p>姓名</p>
            <input type="text" id="name" class="inp">
            <br>
            <br>
            <input type="button" name="insert" value="增" class="but" onclick="insert()">
            <input type="button" name="del" value="删" class="but" onclick="del()">
            <input type="button" name="update" value="改" class="but" onclick="update()">
            <input type="button" name="select" value="查" class="but" onclick="get()">
            <br>
            <!-- 存放查询结果 -->
            <div id="test"></div>
    </fieldset>

    <script>
        // Web SQL数据库是Web端的关系型数据库,使用Sqlite数据库进行存储,可以使用SQL完成数据操作,已停止维护
        // 支持NULL空值/INTEGER整型/REAL浮点型/TEXT字符串/BLOB二进制大数据
        // openDatabase:打开数据库,不存在则创建
        // transaction:控制事务提交或回滚
        // executeSql:执行真正的SQL语句
        // 语法:openDatabase(dbName,dbVersion,dbDescribe,dbSize,callback());
        // dbName:指定数据库的名称
        // dbVersion:指定数据库的版本号
        // dbDescribe:指定数据库的描述说明
        // dbSize:指定数据库的大小,单位为字节
        // callback():可选参数,指定回调函数
        let db;
        db = openDatabase("blue","1.0","学生信息数据库",1024*1024*3);
        // 创建表
        // function createTable(){
        //     db.transaction(function(tx){
        //         tx.executeSql(
        //             "create table if not exists blue(id integer primary key,name TEXT)",[],
        //             function(tx,rs){
        //                 alert("创建成功");
        //             },
        //             function (tx,error){
        //                 alert("创建失败,"+error.message);
        //             }
        //         )
        //     })
        // }
        // 示例 插入
        function insert(){
            let id = document.getElementById("id").value;
            let name = document.getElementById("name").value;
            // 开启一个事务
            db.transaction(function(tx){
            // 执行SQL语句
                tx.executeSql(
                    // "sql语句",
                    "insert into stu(id,name) values(?,?)",
                    // SQL语句中所需参数对应值
                    [parseInt(id),name],
                    // SQL语句执行成功后的回调函数
                    function(tx,res){
                        alert("插入成功");
                    },
                    // SQL语句执行失败后的回调函数
                    function (tx,error){
                        alert("插入失败,"+error.message);
                    }
                )
            })
        }

        function get(){
            console.log("select");
            db.transaction(function(tx){
                tx.executeSql(
                    "select * from stu",
                    [],
                    function(tx,res){
                        let data = res.rows;
                        let rows = data.length;
                        console.log(data[1].id);
                        console.log(rows);
                        for(let a = 0;a < rows;a++){
                            let dom = document.createElement('p');
                            dom.id = "a"+a;
                            document.getElementById("test").appendChild(dom);
                            document.getElementById("a"+a).innerHTML = "学号:" + data[a].id + "姓名:" + data[a].name
                        }
                    },
                    function(tx,error){
                        alert("查看失败,"+error.message);
                    }
                )
            })
        }
        function update(){
            let id = document.getElementById("id").value;
            let name = document.getElementById("name").value;
            db.transaction(function(tx){
                tx.executeSql(
                    "update stu set name=? where id=?",
                    [name,parseInt(id)],
                    function(tx,res){
                        alert("更新成功");
                    },
                    function (tx,error){
                        alert("更新失败,"+error.message);
                    }
                )
            })
        }
        function del(){
            let id = document.getElementById("id").value;
            db.transaction(function(tx){
                tx.executeSql(
                    "delete from stu where id=?",
                    [parseInt(id)],
                    function(tx,res){
                        alert("删除成功");
                    },
                    function (tx,error){
                        alert("删除失败,"+error.message);
                    }
                )
            })
        }


    </script>
</body>

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值