当前位置: 首页 > news >正文

正邦做网站多少钱网站建设就业怎么样

正邦做网站多少钱,网站建设就业怎么样,网站建设打造,做快递单的网站会不会是骗人的数据库备份与恢复 场景介绍 当应用在处理一项重要的操作#xff0c;显然是不能被打断的。例如#xff1a;写入多个表关联的事务。此时#xff0c;每个表的写入都是单独的#xff0c;但是表与表之间的事务关联性不能被分割。 如果操作的过程中出现问题#xff0c;开发者可…数据库备份与恢复 场景介绍 当应用在处理一项重要的操作显然是不能被打断的。例如写入多个表关联的事务。此时每个表的写入都是单独的但是表与表之间的事务关联性不能被分割。 如果操作的过程中出现问题开发者可以使用恢复功能将数据库恢复到之前的状态重新对数据库进行操作。 在数据库被篡改、删除、或者设备断电场景下数据库可能会因为数据丢失、数据损坏、脏数据等而不可用可以通过数据库的备份恢复能力将数据库恢复至可用状态。 键值型数据库和关系型数据库均支持对数据库的备份和恢复。另外键值型数据库还支持删除数据库备份以释放本地存储空间。 键值型数据库备份、恢复与删除 键值型数据库通过 backup 接口实现数据库备份通过 restore 接口实现数据库恢复通过 deletebackup 接口删除数据库备份。具体接口及功能可见分布式键值数据库。 1.  创建数据库。(1) 创建 kvManager。 (2) 配置数据库参数。 (3)  创建 kvStore。 import distributedKVStore from ohos.data.distributedKVStore; let kvManager;let context  getContext(this);const kvManagerConfig  {  context: context,  bundleName: com.example.datamanagertest}try {  kvManager  distributedKVStore.createKVManager(kvManagerConfig);  console.info(Succeeded in creating KVManager.);} catch (e) {  console.error(Failed to create KVManager. Code:${e.code},message:${e.message});}let kvStore;try { const options  {    createIfMissing: true,    encrypt: false,    backup: false,    kvStoreType: distributedKVStore.KVStoreType.SINGLE_VERSION,    securityLevel: distributedKVStore.SecurityLevel.S2 };  kvManager.getKVStore(storeId, options, (err, store) { if (err) {      console.error(Fail to get KVStore. Code:${err.code},message:${err.message}); return; }    console.info(Succeeded in getting KVStore.);    kvStore  store; });} catch (e) {  console.error(An unexpected error occurred. Code:${e.code},message:${e.message});}2.  使用 put()方法插入数据。 const KEY_TEST_STRING_ELEMENT  key_test_string;const VALUE_TEST_STRING_ELEMENT  value_test_string;try {  kvStore.put(KEY_TEST_STRING_ELEMENT, VALUE_TEST_STRING_ELEMENT, (err)  {    if (err ! undefined) {      console.error(Fail to put data. Code:${err.code},message:${err.message});      return;    }    console.info(Succeeded in putting data.);  });} catch (e) {  console.error(An unexpected error occurred. Code:${e.code},message:${e.message});} 3.  使用 backup()方法备份数据。 let file  BK001;try {  kvStore.backup(file, (err)  {    if (err) {      console.error(Fail to backup data.code:${err.code},message:${err.message});    } else {      console.info(Succeeded in backupping data.);    }  });} catch (e) {  console.error(An unexpected error occurred. Code:${e.code},message:${e.message});} 4.  使用 delete()方法删除数据模拟意外删除、篡改场景。 try {  kvStore.delete(KEY_TEST_STRING_ELEMENT, (err)  {    if (err ! undefined) {      console.error(Fail to delete data. Code:${err.code},message:${err.message});      return;    }    console.info(Succeeded in deleting data.);  });} catch (e) {  console.error(An unexpected error occurred. Code:${e.code},message:${e.message});}5.  使用 restore()方法恢复数据。 let file  BK001;try {  kvStore.restore(file, (err)  {    if (err) {      console.error(Fail to restore data. Code:${err.code},message:${err.message});    } else {      console.info(Succeeded in restoring data.);    }  });} catch (e) {  console.error(An unexpected error occurred. Code:${e.code},message:${e.message});} 6.  当本地设备存储空间有限或需要重新备份时还可使用 deleteBackup()方法删除备份释放存储空间。 let kvStore;let files  [BK001];try {  kvStore.deleteBackup(files).then((data)  {    console.info(Succeed in deleting Backup. Data:filename is ${data[0]},result is ${data[1]}.);  }).catch((err)  {    console.error(Fail to delete Backup. Code:${err.code},message:${err.message});  })} catch (e) {  console.error(An unexpected error occurred. Code:${e.code},message:${e.message});} 关系型数据库备份与恢复 关系型数据库通过 backup 接口实现数据库备份通过 restore 接口实现数据库恢复。具体接口及功能可见关系型数据库。 1.  使用 getRdbStore()方法创建关系型数据库。 import relationalStore from ohos.data.relationalStore; let store;let context  getContext(this);const STORE_CONFIG  {  name: RdbTest.db,  securityLevel: relationalStore.SecurityLevel.S1};relationalStore.getRdbStore(context, STORE_CONFIG, (err, rdbStore)  {  store  rdbStore;  if (err) {    console.error(Failed to get RdbStore. Code:${err.code},message:${err.message});    return;  }  store.executeSql(CREATE TABLE IF NOT EXISTS EMPLOYEE (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, age INTEGER, salary INTEGER, codes Uint8Array);, null);  console.info(Succeeded in getting RdbStore.);}) 2.  使用 insert()方法插入数据。 const valueBucket  {  NAME: Lisa,  AGE: 18,  SALARY: 100.5, CODES: new Uint8Array([1, 2, 3, 4, 5])};store.insert(EMPLOYEE, valueBucket, relationalStore.ConflictResolution.ON_CONFLICT_REPLACE, (err, rowId)  {  if (err) {    console.error(Failed to insert data. Code:${err.code},message:${err.message});    return;  }  console.info(Succeeded in inserting data. rowId:${rowId});}) 3.  使用 backup()方法备份数据。 store.backup(dbBackup.db, (err)  {  if (err) {    console.error(Failed to backup data. Code:${err.code},message:${err.message});    return;  }  console.info(Succeeded in backuping data.);}) 4.  使用 delete()方法删除数据模拟意外删除、篡改场景。 let predicates  new relationalStore.RdbPredicates(EMPLOYEE);predicates.equalTo(NAME, Lisa);let promise  store.delete(predicates);promise.then((rows)  {  console.info(Delete rows: ${rows});}).catch((err)  {  console.error(Failed to delete data. Code:${err.code},message:${err.message});}) 5.  使用 restore()方法恢复数据。 store.restore(dbBackup.db, (err)  {  if (err) {    console.error(Failed to restore data. Code:${err.code},message:${err.message});    return;  }  console.info(Succeeded in restoring data.);}) 数据库加密 场景介绍 为了增强数据库的安全性数据库提供了一个安全适用的数据库加密能力从而对数据库存储的内容实施有效保护。通过数据库加密等安全方法实现了数据库数据存储的保密性和完整性要求使得数据库以密文方式存储并在密态方式下工作确保了数据安全。 加密后的数据库只能通过接口进行访问无法通过其它方式打开数据库文件。数据库的加密属性在创建数据库时确认无法变更。 键值型数据库和关系型数据库均支持数据库加密操作。 键值型数据库加密 键值型数据库通过 options 中 encrypt 参数来设置是否加密默认为 false表示不加密。encrypt 参数为 true 时表示加密。 具体接口及功能可见分布式键值数据库。 import distributedKVStore from ohos.data.distributedKVStore; let kvManager;let context  getContext(this);const kvManagerConfig  {  context: context,  bundleName: com.example.datamanagertest}try {  kvManager  distributedKVStore.createKVManager(kvManagerConfig);  console.info(Succeeded in creating KVManager.);} catch (e) {  console.error(Failed to create KVManager. Code:${e.code},message:${e.message});}let kvStore;try {  const options  {    createIfMissing: true,    // 设置数据库加密    encrypt: true,    backup: false,    kvStoreType: distributedKVStore.KVStoreType.SINGLE_VERSION,    securityLevel: distributedKVStore.SecurityLevel.S2  };  kvManager.getKVStore(storeId, options, (err, store)  {    if (err) {      console.error(Fail to get KVStore. Code:${err.code},message:${err.message});      return;    }    console.info(Succeeded in getting KVStore.);    kvStore  store;  });} catch (e) {  console.error(An unexpected error occurred. Code:${e.code},message:${e.message});} 关系型数据库加密 关系型数据库通过 StoreConfig 中 encrypt 属性来设置是否加密默认为 false表示不加密。encrypt 参数为 true 时表示加密。 具体接口及功能可见关系型数据库。 import relationalStore from ohos.data.relationalStore; let store;let context  getContext(this);const STORE_CONFIG {  name: RdbTest.db,  securityLevel: relationalStore.SecurityLevel.S1,  encrypt: true};relationalStore.getRdbStore(context, STORE_CONFIG, (err, rdbStore) {  store  rdbStore; if (err) {    console.error(Failed to get RdbStore. Code:${err.code},message:${err.message}); return; }  console.info(Succeeded in getting RdbStore.);})
http://www.dnsts.com.cn/news/67031.html

相关文章:

  • 广州仿网站饰品设计网站推荐
  • 潮州网站开发房地产销售入门培训
  • 福州网站建设网站设计网站推广个人养老保险金怎么交
  • 上海自适应网站网页截图快捷键是哪个键
  • 钓鱼网站网址学网页设计大概需要多少钱?
  • 房产网站排行娃哈哈网站建设策划书
  • 建站网址平台手机如何申请个人邮箱
  • 网站开发进度管理表做百度推广需要有自己的网站吗
  • 一学一做动漫视频网站东莞网站制作与网站建设
  • 厦门营销网站建设网站建设项目设计表
  • 织梦怎么做中英文双语网站昌平县城做网站
  • 网站被做站公司贩卖又拍云wordpress插件
  • 网站建设教程流程好网站开发公司
  • 门户网站建设意见vi形象设计企业vi设计公司
  • 那个网站做排列五头比较准河南建筑公司网站
  • 网站推广活动策划沈阳定制网站建设
  • 泊头西环网站建设哈尔滨网络公司代理商
  • 安装网站模板站点创建成功有影响吗
  • 网站主域名是什么东莞建设网站综合服务平台
  • 宁波网站制作 收费标准阿里巴巴官网登录
  • 前端一般模仿什么网站如何将公司网站做的更好看
  • 容桂品牌网站建设优惠网站的建设需要数据库
  • 网站建设购物车google建网站
  • 广州做网站信科分公司模板网站音响案例
  • 需要做网站的公司ppt设计怎么赚钱
  • 怎么做垂直网站做电影网站怎么降低内存
  • 虚拟展馆官方网站建设优化设计五年级下册语文答案2021
  • 南京老牌网站建设公司js链接wordpress
  • 建设电商网站所需硬件品牌建设实施细则
  • 产品设计排版网站dede网站名称不能保存