日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OS對象關(guān)系映射數(shù)據(jù)庫概述

HarmonyOS 對象關(guān)系映射(Object Relational Mapping,ORM)數(shù)據(jù)庫是一款基于 SQLite 的數(shù)據(jù)庫框架,屏蔽了底層 SQLite 數(shù)據(jù)庫的 SQL 操作,針對實體和關(guān)系提供了增刪改查等一系列的面向?qū)ο蠼涌?。?yīng)用開發(fā)者不必再去編寫復雜的 SQL 語句, 以操作對象的形式來操作數(shù)據(jù)庫,提升效率的同時也能聚焦于業(yè)務(wù)開發(fā)。

專業(yè)領(lǐng)域包括成都網(wǎng)站制作、成都網(wǎng)站設(shè)計、購物商城網(wǎng)站建設(shè)、微信營銷、系統(tǒng)平臺開發(fā), 與其他網(wǎng)站設(shè)計及系統(tǒng)開發(fā)公司不同,創(chuàng)新互聯(lián)的整合解決方案結(jié)合了幫做網(wǎng)絡(luò)品牌建設(shè)經(jīng)驗和互聯(lián)網(wǎng)整合營銷的理念,并將策略和執(zhí)行緊密結(jié)合,為客戶提供全網(wǎng)互聯(lián)網(wǎng)整合方案。

基本概念

  • 對象關(guān)系映射數(shù)據(jù)庫的三個主要組件

  • 數(shù)據(jù)庫:被開發(fā)者用 @Database 注解,且繼承了 OrmDatabase 的類,對應(yīng)關(guān)系型數(shù)據(jù)庫。
  • 實體對象:被開發(fā)者用 @Entity 注解,且繼承了 OrmObject 的類,對應(yīng)關(guān)系型數(shù)據(jù)庫中的表。
  • 對象數(shù)據(jù)操作接口:包括數(shù)據(jù)庫操作的入口 OrmContext 類和謂詞接口(OrmPredicate)等。
  • 謂詞

數(shù)據(jù)庫中是用來代表數(shù)據(jù)實體的性質(zhì)、特征或者數(shù)據(jù)實體之間關(guān)系的詞項,主要用來定義數(shù)據(jù)庫的操作條件。對象關(guān)系映射數(shù)據(jù)庫將 SQLite 數(shù)據(jù)庫中的謂詞封裝成了接口方法供開發(fā)者調(diào)用。開發(fā)者通過對象數(shù)據(jù)操作接口,可以訪問到應(yīng)用持久化的關(guān)系型數(shù)據(jù)。

  • 對象關(guān)系映射數(shù)據(jù)庫

通過將實例對象映射到關(guān)系上,實現(xiàn)使用操作實例對象的語法,來操作關(guān)系型數(shù)據(jù)庫。它是在 SQLite 數(shù)據(jù)庫的基礎(chǔ)上提供的一個抽象層。

  • SQLite 數(shù)據(jù)庫

一款輕型的數(shù)據(jù)庫,是遵守 ACID 的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。

運作機制

對象關(guān)系映射數(shù)據(jù)庫操作是基于關(guān)系型數(shù)據(jù)庫操作接口完成的,實際是在關(guān)系型數(shù)據(jù)庫操作的基礎(chǔ)上又實現(xiàn)了對象關(guān)系映射等特性。因此對象關(guān)系映射數(shù)據(jù)庫跟關(guān)系型數(shù)據(jù)庫一樣,都使用 SQLite 作為持久化引擎,底層使用的是同一套數(shù)據(jù)庫連接池和數(shù)據(jù)庫連接機制。

使用對象關(guān)系映射數(shù)據(jù)庫的開發(fā)者需要先配置實體模型與關(guān)系映射文件。應(yīng)用數(shù)據(jù)管理框架提供的類生成工具會解析這些文件,生成數(shù)據(jù)庫幫助類,這樣應(yīng)用數(shù)據(jù)管理框架就能在運行時,根據(jù)開發(fā)者的配置創(chuàng)建好數(shù)據(jù)庫,并在存儲過程中自動完成對象關(guān)系映射。開發(fā)者再通過對象數(shù)據(jù)操作接口,如 OrmContext 接口和謂詞接口等操作持久化數(shù)據(jù)庫。

對象數(shù)據(jù)操作接口提供一組基于對象映射的數(shù)據(jù)操作接口,實現(xiàn)了基于 SQL 的關(guān)系模型數(shù)據(jù)到對象的映射,讓用戶不需要再和復雜的 SQL 語句打交道,只需簡單地操作實體對象的屬性和方法。對象數(shù)據(jù)操作接口支持對象的增刪改查操作,同時支持事務(wù)操作等。

圖1 對象關(guān)系映射數(shù)據(jù)庫運作機制

默認配置

  • 如果不指定數(shù)據(jù)庫的日志模式,那么系統(tǒng)默認日志方式是 WAL(Write Ahead Log)模式。
  • 如果不指定數(shù)據(jù)庫的落盤模式,那么系統(tǒng)默認落盤方式是 FULL模式。
  • HarmonyOS 數(shù)據(jù)庫使用的共享內(nèi)存默認大小是 2MB。

約束與限制

HarmonyOS 對象關(guān)系映射數(shù)據(jù)庫是建立在 HarmonyOS 關(guān)系型數(shù)據(jù)庫的基礎(chǔ)之上的,所以關(guān)系型數(shù)據(jù)庫的一些約束與限制請參考約束與限制。

此外當開發(fā)者建立實體對象類時,對象屬性的類型可以在下表的類型中選擇。不支持使用自定義類型。

類型名稱 描述 初始值
Integer封裝整型null
int整型0
Long封裝長整型null
long長整型0L
Double封裝雙精度浮點型null
double雙精度浮點型0
Float封裝單精度浮點型null
float單精度浮點型0
Short封裝短整型null
short短整型0
String字符串型null
Boolean封裝布爾型null
boolean布爾型0
Byte封裝字節(jié)型null
byte字節(jié)型0
Character封裝字符型null
char字符型' '
Date日期類null
Time時間類null
Timestamp時間戳類null
Calendar日歷類null
Blob二進制大對象null
Clob字符大對象null

文章名稱:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OS對象關(guān)系映射數(shù)據(jù)庫概述
文章網(wǎng)址:http://www.5511xx.com/article/cdespds.html