IDBDatabase的数据库操作


一、数据库实例IDBDatabase的属性

  • name:数据库名,string
  • objectStoreNames:数据库中的对象仓库名 ,集合,DOMStringList
  • version:数据库版本,整数
  • onabort
  • onclose
  • onerror
  • onversionchange

二、打开/创建数据库

IDBOpenDBRequest dBOpenDBRequest=indexedDBInstance.open(databaseName,version)
  • databaseName:数据库名,string;数据库不存在,就会新建数据库

  • version:数据库版本,整数,如果省略,默认为当前版本;新建数据库时,默认为1

  • 返回值IDBOpenDBRequest

    • readyState: 状态
      • “done” - 完成
    • result:数据库对象,IDBDatabase
    • source: 对象仓库对象
    • transaction: 事务对象
    • onblocked: 堵塞的回调函数
  • 打开数据库失败的回调函数

    dBOpenDBRequest.onerror=(event)=>{
    
    }
    
  • 打开数据库成功的回调函数

    dBOpenDBRequest.onsuccess=(event)=>{
        //数据库实例
        //event.target 等效于 dBOpenDBRequest
        //const db=event.target.result 等效于 dBOpenDBRequest.result
     . . . . . .
    }
    
  • 数据库升级的回调函数

    • 指定的版本,大于数据库的实际版本,会执行该事件
    • 数据库不存在,新建时,会执行该事件(因为这时版本从无到有),再执行onsuccess打开数据库成功的回调函数
    • 除了数据之外的创建、删除操作必须在这个回调函数中执行,比如:对象仓库的创建/删除、索引的创建、删除
dBOpenDBRequest.onupgradeneeded=(event)=>{
    //数据库实例
    //event.target 等效于 dBOpenDBRequest
    //const db=event.target.result 等效于 const db=dBOpenDBRequest.result
}

三、关闭数据库

void  db.close()

三、删除数据库

IDBOpenDBRequest  indexedDBInstance.deleteDatabase(string  name)
  • 返回值IDBOpenDBRequest
    • result: undefined
    • readyState: “done”
    • source: null
    • transaction: 事务对象
    • onerror: 失败的回调函数
    • onsuccess: 成功的回调函数
    • onupgradeneeded: 的回调函数
    • onblocked: 堵塞的回调函数
    • error: null
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kimi-001

只想在有限的时间分享更多的知识

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值