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

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

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSRdbStore

RdbStore

public interface RdbStore

提供管理關系數(shù)據(jù)庫 (RDB) 的方法。

此類提供用于創(chuàng)建、查詢、更新和刪除 RDB 的方法。

嵌套類摘要

修飾符和類型 接口 描述
static classRdbStore.ConflictResolution表示解決沖突的方法的類型。

字段摘要

修飾符和類型 字段 描述
static intMAX_BATCH_INSERT_SIZE

方法總結(jié)

修飾符和類型 方法 描述
voidaddAttach(String alias, String name, byte[] encryptKey)附加數(shù)據(jù)庫。
booleanbackup(String destName)以指定名稱備份數(shù)據(jù)庫。
booleanbackup(String destName, byte[] destEncryptKey)使用指定的加密密鑰以指定名稱備份數(shù)據(jù)庫。
ListLongbatchInsertOrThrowException(String tableName, ListValuesBucket initialValues, RdbStore.ConflictResolution conflictResolution)根據(jù)沖突處理策略將數(shù)據(jù)批量插入數(shù)據(jù)庫。
voidbeginTransaction()以 EXCLUSIVE 模式開始事務。
voidbeginTransactionWithObserver(TransactionObserver transactionObserver)使用偵聽器以獨占模式開始事務。
StatementbuildStatement(String sql)將 SQL 語句編譯成可重用的語句。
voidchangeEncryptKey(byte[] newEncryptKey)更改打開的加密數(shù)據(jù)庫的加密密鑰。
booleancheckIntegrity()檢查主數(shù)據(jù)庫和附加數(shù)據(jù)庫的完整性。
voidclose()關閉一個 RDB。
voidconfigLocale(Locale locale)設置數(shù)據(jù)庫區(qū)域設置。
longcount(String tableName, String whereClause, String[] whereArgs)查詢RDB存儲中滿足指定條件的行數(shù)。
longcount(AbsRdbPredicates absRdbPredicates)獲取數(shù)據(jù)滿足 AbsRdbPredicates 的指定實例對象的行數(shù)。
intdelete(AbsRdbPredicates absRdbPredicates)根據(jù) AbsRdbPredicates 的指定實例對象從數(shù)據(jù)庫中刪除數(shù)據(jù)。
voidendTransaction()結(jié)束交易。
voidexecuteSql(String sql)執(zhí)行不返回值的 SQL 語句。
voidexecuteSql(String sql, Object[] sqlArgs)執(zhí)行包含指定參數(shù)但不返回值的 SQL 語句。
StringgetPath()獲取數(shù)據(jù)庫文件的路徑。
intgetVersion()獲取數(shù)據(jù)庫版本。
voidgiveConnectionTemporarily(long milliseconds)暫時斷開與數(shù)據(jù)庫的連接以允許其他線程使用數(shù)據(jù)庫。
longinsert(String table, ValuesBucket initialValues)在目標表中插入一行數(shù)據(jù)。
longinsertOrThrowException(String table, ValuesBucket initialValues)在目標表中插入一行數(shù)據(jù)。
longinsertWithConflictResolution(String table, ValuesBucket initialValues, RdbStore.ConflictResolution conflictResolution)在目標表中插入一行數(shù)據(jù)并指定解決沖突的方法。
booleanisHoldingConnection()檢查此線程是否擁有數(shù)據(jù)庫連接。
booleanisInTransaction()檢查當前線程是否正在進行事務。
booleanisMemoryRdb()檢查數(shù)據(jù)庫是否在內(nèi)存中打開。
booleanisOpen()檢查數(shù)據(jù)庫是否打開。
booleanisReadOnly()檢查數(shù)據(jù)庫是否以只讀模式打開。
ListPairString,StringlistAttached()查詢附加數(shù)據(jù)庫列表。
voidmarkAsCommit()將當前事務標記為提交。
ResultSetquery(AbsRdbPredicates absRdbPredicates, String[] columns)根據(jù)指定條件查詢數(shù)據(jù)庫中的數(shù)據(jù)。
ResultSetqueryByStep(AbsRdbPredicates absRdbPredicates, String[] columns)根據(jù)指定條件查詢數(shù)據(jù)庫中的數(shù)據(jù)。
ResultSetquerySql(String sql, String[] sqlArgs)執(zhí)行一條 SQL 語句。
ResultSetquerySqlByStep(String sql, String[] sqlArgs)執(zhí)行 SQL 語句并指定結(jié)果集。
ResultSetquerySqlWithHook(String sql, String[] sqlArgs, ResultSetHook resultSetHook)執(zhí)行 SQL 語句并指定結(jié)果集。
ResultSetqueryWithHook(AbsRdbPredicates absRdbPredicates, String[] columns, ResultSetHook resultSetHook)根據(jù)指定條件查詢數(shù)據(jù)庫中的數(shù)據(jù)并指定結(jié)果集。
longreplace(String table, ValuesBucket initialValues)替換目標表中的一行數(shù)據(jù)。
longreplaceOrThrowException(String table, ValuesBucket initialValues)替換目標表中的一行數(shù)據(jù)。
booleanrestore(String srcName)從指定的未加密數(shù)據(jù)庫文件恢復數(shù)據(jù)庫。
booleanrestore(String srcName, byte[] srcEncryptKey, byte[] destEncryptKey)從指定的加密或未加密數(shù)據(jù)庫文件恢復數(shù)據(jù)庫。
voidsetVersion(int version)設置新數(shù)據(jù)庫的版本。
StringtoString()獲取數(shù)據(jù)庫存儲的描述。
intupdate(ValuesBucket values, AbsRdbPredicates absRdbPredicates)根據(jù) AbsRdbPredicates 的指定實例對象更新數(shù)據(jù)庫中的數(shù)據(jù)。
intupdateWithConflictResolution(ValuesBucket values, AbsRdbPredicates absRdbPredicates, RdbStore.ConflictResolution conflictResolution)更新目標表中的一行數(shù)據(jù),并指定解決沖突的方法。

字段詳細信息

MAX_BATCH_INSERT_SIZE

static final int MAX_BATCH_INSERT_SIZE

方法詳情

insert

long insert(String table, ValuesBucket initialValues)

在目標表中插入一行數(shù)據(jù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
table表示目標表。
initialValues表示要插入到表中的數(shù)據(jù)行。 數(shù)據(jù)包含存儲在 ValuesBucket 中的鍵值對。 鍵值對與表的列名相關聯(lián)。

返回:

如果操作成功,則返回行 ID; 否則返回 -1。

insertOrThrowException

long insertOrThrowException(String table, ValuesBucket initialValues)

在目標表中插入一行數(shù)據(jù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
table表示目標表。
initialValues表示要插入到表中的數(shù)據(jù)行。 數(shù)據(jù)包含存儲在 ValuesBucket 中的鍵值對。 鍵值對與表的列名相關聯(lián)。

返回:

如果操作成功,則返回行 ID; 否則返回 -1。

Throws:

Throw名稱 Throw描述
RdbException如果發(fā)生 SQLite 數(shù)據(jù)庫錯誤,則引發(fā)此異常。 您必須自己處理此異常。

batchInsertOrThrowException

ListLong batchInsertOrThrowException(String tableName, ListValuesBucket initialValues, RdbStore.ConflictResolution conflictResolution)

根據(jù)沖突處理策略將數(shù)據(jù)批量插入數(shù)據(jù)庫。

如果沖突處理策略為空,將使用默認策略 ConflictResolution#ON_CONFLICT_NONE。 如果在數(shù)據(jù)插入過程中發(fā)生異常,操作會因沖突處理策略的類型而異。

  • ConflictResolution#ON_CONFLICT_ROLLBACK:如果發(fā)生數(shù)據(jù)沖突,數(shù)據(jù)庫列為空,或者數(shù)據(jù)庫列只有一個值,所有插入的數(shù)據(jù)將被回滾。
  • ConflictResolution#ON_CONFLICT_ABORT or ConflictResolution#ON_CONFLICT_FAIL:如果發(fā)生數(shù)據(jù)沖突,數(shù)據(jù)庫列為空,或者數(shù)據(jù)庫列只有一個值,插入的數(shù)據(jù)將被保留,并拋出異常。
  • ConflictResolution#ON_CONFLICT_IGNORE:如果發(fā)生數(shù)據(jù)沖突或數(shù)據(jù)庫列為空,將忽略異常,返回值-1。數(shù)據(jù)插入將繼續(xù),直到所有數(shù)據(jù)都插入數(shù)據(jù)庫。如果外鍵不存在或發(fā)生外鍵沖突,請參閱 ConflictResolution#ON_CONFLICT_ABORT。
  • ConflictResolution#ON_CONFLICT_REPLACE:如果發(fā)生數(shù)據(jù)沖突,或者數(shù)據(jù)庫列有默認值或只有一個值,將替換沖突數(shù)據(jù)并繼續(xù)插入數(shù)據(jù),直到所有數(shù)據(jù)都插入數(shù)據(jù)庫。如果數(shù)據(jù)庫列沒有默認值或發(fā)生外鍵沖突,請參閱 ConflictResolution#ON_CONFLICT_ABORT。

參數(shù):

參數(shù)名稱 參數(shù)描述
tableName表示數(shù)據(jù)庫的表名。
initialValues表示要插入數(shù)據(jù)庫的數(shù)據(jù)。
conflictResolution表示沖突處理策略。

返回:

如果批量插入成功,則返回所有行的 ID。 如果使用 ConflictResolution#ON_CONFLICT_IGNORE 策略,則返回的列表可能包含 -1。

Throws:

Throw名稱 Throw描述
IllegalArgumentException如果表名為 null 或空字符串、initialValues 為 null 或空列表、initialValues 中的值為 null 或空字符串,或者 initialValues 中的值數(shù)量超過 RdbStore#MAX_BATCH_INSERT_SIZE,則拋出此異常。
RdbException如果數(shù)據(jù)插入數(shù)據(jù)庫失敗,則拋出此異常。

replace

long replace(String table, ValuesBucket initialValues)

替換目標表中的一行數(shù)據(jù)。

如果目標行不存在,則此方法插入一行。

參數(shù):

參數(shù)名稱 參數(shù)描述
table表示目標表。
initialValues表示用于替換目標表中的數(shù)據(jù)行的數(shù)據(jù)行。 數(shù)據(jù)包含存儲在 ValuesBucket 中的鍵值對。 鍵值對與表的列名相關聯(lián)。

返回:

如果操作成功,則返回行 ID; 否則返回 -1。

replaceOrThrowException

long replaceOrThrowException(String table, ValuesBucket initialValues)

替換目標表中的一行數(shù)據(jù)。

如果目標行不存在,則此方法插入一行。

參數(shù):

參數(shù)名稱 參數(shù)描述
table表示目標表。
initialValues表示用于替換目標表中的數(shù)據(jù)行的數(shù)據(jù)行。 數(shù)據(jù)包含存儲在 ValuesBucket 中的鍵值對。 鍵值對與表的列名相關聯(lián)。

返回:

如果操作成功,則返回行 ID; 否則返回 -1。

Throws:

Throw名稱 Throw描述
RdbException如果發(fā)生 SQLite 數(shù)據(jù)庫錯誤,則引發(fā)此異常。 您必須自己處理此異常。

insertWithConflictResolution

long insertWithConflictResolution(String table, ValuesBucket initialValues, RdbStore.ConflictResolution conflictResolution)

在目標表中插入一行數(shù)據(jù)并指定解決沖突的方法。

參數(shù):

參數(shù)名稱 參數(shù)描述
table表示目標表。
initialValues表示要插入到表中的數(shù)據(jù)行。 數(shù)據(jù)包含存儲在 ValuesBucket 中的鍵值對。 鍵值對與表的列名相關聯(lián)。
conflictResolution表示解決沖突的方法。

返回:

如果操作成功,則返回行 ID; 否則返回 -1。

delete

int delete(AbsRdbPredicates absRdbPredicates)

根據(jù) AbsRdbPredicates 的指定實例對象從數(shù)據(jù)庫中刪除數(shù)據(jù)。

您可以傳遞 AbsRdbPredicates 的實例對象,例如 RdbPredicates 和 RawRdbPredicates 來指定刪除條件。 如果傳入 RdbPredicates 對象,可以調(diào)用 RdbPredicates#equalTo 等方法設置刪除條件。 如果傳遞 RawRdbPredicates 對象,則只能設置數(shù)據(jù)庫 tableName、whereClause 和 whereArgs。 whereArgs 是 whereClause 中占位符的值,必須與占位符的順序相同。

參數(shù):

參數(shù)名稱 參數(shù)描述
absRdbPredicates指示 AbsRdbPredicates 的實例對象指定的刪除條件。

返回:

返回受影響的行數(shù)。

update

int update(ValuesBucket values, AbsRdbPredicates absRdbPredicates)

根據(jù) AbsRdbPredicates 的指定實例對象更新數(shù)據(jù)庫中的數(shù)據(jù)。

您可以傳遞RdbPredicates 和RawRdbPredicates 等AbsRdbPredicates 的實例對象來指定更新條件。 如果傳遞 RdbPredicates 對象,則可以調(diào)用 RdbPredicates#equalTo 等方法設置更新條件。 如果傳遞 RawRdbPredicates 對象,則只能設置數(shù)據(jù)庫 tableName、whereClause 和 whereArgs。 whereArgs 是 whereClause 中占位符的值,必須與占位符的順序相同。

參數(shù):

參數(shù)名稱 參數(shù)描述
values表示數(shù)據(jù)庫中要更新的數(shù)據(jù)行。 數(shù)據(jù)包含存儲在 ValuesBucket 中的鍵值對。 鍵值對與數(shù)據(jù)庫表的列名相關聯(lián)。
absRdbPredicates通過 AbsRdbPredicates 的實例對象指示指定的更新條件。

返回:

返回受影響的行數(shù)。

updateWithConflictResolution

int updateWithConflictResolution(ValuesBucket values, AbsRdbPredicates absRdbPredicates, RdbStore.ConflictResolution conflictResolution)

更新目標表中的一行數(shù)據(jù),并指定解決沖突的方法。

參數(shù):

參數(shù)名稱 參數(shù)描述
values表示要插入到表中的數(shù)據(jù)行。 數(shù)據(jù)包含存儲在 ValuesBucket 中的鍵值對。 鍵值對與表的列名相關聯(lián)。
absRdbPredicates通過 RdbPredicates 的實例對象指示指定的更新條件。
conflictResolution表示解決沖突的方法。

返回:

返回受影響的行數(shù)。

query

ResultSet query(AbsRdbPredicates absRdbPredicates, String[] columns)

根據(jù)指定條件查詢數(shù)據(jù)庫中的數(shù)據(jù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
absRdbPredicates表示查詢條件。
columns表示要查詢的列。 如果值為 null,則查詢適用于所有列。

返回:

如果操作成功,則返回一個 ResultSet 對象;

queryWithHook

ResultSet queryWithHook(AbsRdbPredicates absRdbPredicates, String[] columns, ResultSetHook resultSetHook)

根據(jù)指定條件查詢數(shù)據(jù)庫中的數(shù)據(jù)并指定結(jié)果集。

參數(shù):

參數(shù)名稱 參數(shù)描述
absRdbPredicates表示查詢條件。
resultSetHook指示要使用的結(jié)果集工廠。
columns表示要查詢的列。 如果值為 null,則查詢適用于所有列。

返回:

如果操作成功,則返回一個 ResultSet 對象;

querySql

ResultSet querySql(String sql, String[] sqlArgs)

執(zhí)行一條 SQL 語句。

參數(shù):

參數(shù)名稱 參數(shù)描述
sql指示要執(zhí)行的 SQL 語句。
sqlArgs表示SQL語句中的參數(shù)值。 值是字符串。

返回:

如果操作成功,則返回一個 ResultSet 對象;

querySqlWithHook

ResultSet querySqlWithHook(String sql, String[] sqlArgs, ResultSetHook resultSetHook)

執(zhí)行 SQL 語句并指定結(jié)果集。

參數(shù):

參數(shù)名稱 參數(shù)描述
resultSetHook指示要使用的結(jié)果集工廠。
sql指示要執(zhí)行的 SQL 語句。
sqlArgs表示SQL語句中的參數(shù)值。 值是字符串。

返回:

如果操作成功,則返回一個 ResultSet 對象;

queryByStep

ResultSet queryByStep(AbsRdbPredicates absRdbPredicates, String[] columns)

根據(jù)指定條件查詢數(shù)據(jù)庫中的數(shù)據(jù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
absRdbPredicates表示查詢條件。
columns表示要查詢的列。 如果值為 null,則查詢適用于所有列。

返回:

如果操作成功,則返回一個 ResultSet 對象

querySqlByStep

ResultSet querySqlByStep(String sql, String[] sqlArgs)

執(zhí)行 SQL 語句并指定結(jié)果集。

參數(shù):

參數(shù)名稱 參數(shù)描述
sql指示要執(zhí)行的 SQL 語句。
sqlArgs表示SQL語句中的參數(shù)值。 值是字符串。

返回:

如果操作成功,則返回一個 ResultSet 對象;

executeSql

void executeSql(String sql)

執(zhí)行不返回值的 SQL 語句。

不要使用這種方法通過“PRAGMA journal_mode'value'”語句來改變數(shù)據(jù)庫連接的journal_mode。

參數(shù):

參數(shù)名稱 參數(shù)描述
sql指示要執(zhí)行的 SQL 語句。

Throws:

Throw名稱 Throw描述
RdbException如果 SQL 語句無效,則引發(fā)此異常。 您必須自己處理此異常。

executeSql

void executeSql(String sql, Object[] sqlArgs)

執(zhí)行包含指定參數(shù)但不返回值的 SQL 語句。

不要使用這種方法通過“PRAGMA journal_mode'value'”語句來改變數(shù)據(jù)庫連接的journal_mode。

參數(shù):

參數(shù)名稱 參數(shù)描述
sql指示要執(zhí)行的 SQL 語句。
sqlArgs表示SQL語句中的參數(shù)值。 值是字符串。

Throws:

Throw名稱 Throw描述
RdbException如果 SQL 語句無效,則引發(fā)此異常。 您必須自己處理此異常。

buildStatement

Statement buildStatement(String sql)

將 SQL 語句編譯成可重用的語句。

一個語句不能被兩個線程同時使用。

參數(shù):

參數(shù)名稱 參數(shù)描述
sql指示要編譯的 SQL 語句。

返回:

返回一個 Statement 對象,它表示一個預編譯的 SQL 語句。

count

long count(String tableName, String whereClause, String[] whereArgs)

查詢RDB存儲中滿足指定條件的行數(shù)。

要獲得可執(zhí)行的SQL查詢語句,將表名和條件子句連接成字符串select count(*) from tableName whereClause,并將字符串中的問號(?)替換為whereArgs中的值。 這樣就可以調(diào)用Statement#executeAndGetLong執(zhí)行SQL查詢語句,獲取滿足指定條件的行數(shù)。 如果 whereClause 為 null 或為空,則返回表中的總行數(shù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
tableName表示數(shù)據(jù)庫表的名稱。 如果為 null 或為空,則拋出 IllegalArgumentException。
whereClause表示一個可選的條件子句,例如 id =? 和 name like?,其中id和name是數(shù)據(jù)庫表的列。
whereArgs指示包含用于替換 whereClause 中問號 (?) 的值的數(shù)組。

返回:

返回 RDB 存儲中滿足指定條件的行數(shù)。

count

long count(AbsRdbPredicates absRdbPredicates)

獲取數(shù)據(jù)滿足 AbsRdbPredicates 的指定實例對象的行數(shù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
absRdbPredicates表示 AbsRdbPredicates 的實例對象指定的計數(shù)條件。

返回:

返回數(shù)據(jù)滿足 AbsRdbPredicates 的指定實例對象的行數(shù)。

addAttach

void addAttach(String alias, String name, byte[] encryptKey)

附加數(shù)據(jù)庫。

參數(shù):

參數(shù)名稱 參數(shù)描述
alias指示要附加的數(shù)據(jù)庫的別名。
name指示要附加的數(shù)據(jù)庫的名稱。
encryptKey指示用于加密要附加的數(shù)據(jù)庫的密鑰。

Throws:

Throw名稱 Throw描述
IllegalArgumentException如果別名為 null,則引發(fā)此異常。

listAttached

ListPairString,String listAttached()

查詢附加數(shù)據(jù)庫列表。

返回:

返回附加數(shù)據(jù)庫的列表,包括它們的名稱和路徑。 主數(shù)據(jù)庫也包含在列表中。

changeEncryptKey

void changeEncryptKey(byte[] newEncryptKey)

更改打開的加密數(shù)據(jù)庫的加密密鑰。

此方法僅適用于加密數(shù)據(jù)庫,不能用于將其更改為未加密數(shù)據(jù)庫。 在調(diào)用此方法之前,請確保數(shù)據(jù)庫已打開并且沒有事務正在使用數(shù)據(jù)庫連接。

參數(shù):

參數(shù)名稱 參數(shù)描述
newEncryptKey表示數(shù)據(jù)庫的新加密密鑰。

Throws:

Throw名稱 Throw描述
IllegalArgumentException如果新的加密密鑰為 null 或空字符串,則引發(fā)此異常。
IllegalStateException如果數(shù)據(jù)庫未打開或未加密,或者事務正在使用數(shù)據(jù)庫連接,則引發(fā)此異常。
RdbException如果更改加密數(shù)據(jù)庫的加密密鑰失敗,則拋出此異常。

getVersion

int getVersion()

獲取數(shù)據(jù)庫版本。

返回:

返回數(shù)據(jù)庫版本。

setVersion

void setVersion(int version)

設置新數(shù)據(jù)庫的版本。

參數(shù):

參數(shù)名稱 參數(shù)描述
version指示要設置的數(shù)據(jù)庫版本。

beginTransaction

void beginTransaction()

以 EXCLUSIVE 模式開始事務。

endTransaction() 方法用于結(jié)束事務。 如果在事務結(jié)束時沒有使用 markAsCommit() 方法將事務標記為已提交,則所有更改都會回滾。

beginTransactionWithObserver

void beginTransactionWithObserver(TransactionObserver transactionObserver)

使用偵聽器以獨占模式開始事務。

endTransaction() 方法用于結(jié)束事務。 如果在事務結(jié)束時沒有使用 markAsCommit() 方法將事務標記為已提交,則所有更改都會回滾。

參數(shù):

參數(shù)名稱 參數(shù)描述
transactionObserver提供可以在事務啟動、提交或回滾時調(diào)用的回調(diào)方法。

markAsCommit

void markAsCommit()

將當前事務標記為提交。

調(diào)用該方法后,在調(diào)用 endTransaction() 方法之前不要進行任何操作。 無論是否發(fā)生錯誤,事務都將被提交。

endTransaction

void endTransaction()

結(jié)束事務。

isInTransaction

boolean isInTransaction()

檢查當前線程是否正在進行事務。

返回:

如果當前線程正在進行事務,則返回 true; 否則返回 false。

giveConnectionTemporarily

void giveConnectionTemporarily(long milliseconds)

暫時斷開與數(shù)據(jù)庫的連接以允許其他線程使用數(shù)據(jù)庫。

該方法可用于提交當前事務并暫時斷開與數(shù)據(jù)庫的連接,以便其他線程可以使用數(shù)據(jù)庫。 在指定的時間段后,將開始新的交易。 使用此方法時,請確保當前事務已啟動,并且該事務未使用 markAsCommit() 方法標記為已提交; 否則,調(diào)用此方法將失敗。 在調(diào)用此方法之前所做的任何更改都無法回滾。

參數(shù):

參數(shù)名稱 參數(shù)描述
milliseconds指示當前連接從數(shù)據(jù)庫中斷的持續(xù)時間(毫秒)。

Throws:

Throw名稱 Throw描述
IllegalStateException如果當前線程不包含事務或包含嵌套事務,或者在調(diào)用此方法之前已使用 markAsCommit() 方法將事務標記為已提交,則拋出此異常。

isHoldingConnection

boolean isHoldingConnection()

檢查此線程是否擁有數(shù)據(jù)庫連接。

返回:

如果此線程擁有數(shù)據(jù)庫連接,則返回 true; 否則返回 false。

isOpen

boolean isOpen()

檢查數(shù)據(jù)庫是否打開。

返回:

如果數(shù)據(jù)庫已打開,則返回 true; 否則返回 false。

getPath

String getPath()

獲取數(shù)據(jù)庫文件的路徑。

返回:

返回數(shù)據(jù)庫文件的路徑。

isReadOnly

boolean isReadOnly()

檢查數(shù)據(jù)庫是否以只讀模式打開。

返回:

如果數(shù)據(jù)庫以只讀模式打開,則返回 true; 否則返回 false。

isMemoryRdb

boolean isMemoryRdb()

檢查數(shù)據(jù)庫是否在內(nèi)存中打開。

返回:

如果數(shù)據(jù)庫在內(nèi)存中打開,則返回 true; 否則返回 false。

checkIntegrity

boolean checkIntegrity()

檢查主數(shù)據(jù)庫和附加數(shù)據(jù)庫的完整性。

此方法調(diào)用 SQLite 數(shù)據(jù)庫的完整性檢查命令。

返回:

如果數(shù)據(jù)庫是完整的,則返回 true; 否則返回 false。

close

void close()

關閉一個 RDB。

不能再使用封閉的 RDB。

backup

boolean backup(String destName)

以指定名稱備份數(shù)據(jù)庫。

生成的備份文件未加密。

參數(shù):

參數(shù)名稱 參數(shù)描述
destName表示保存數(shù)據(jù)庫備份的名稱。 確保您的應用程序?qū)υ撁Q具有寫入權限。

返回:

如果數(shù)據(jù)庫備份成功返回true; 否則返回 false。

restore

boolean restore(String srcName)

從指定的未加密數(shù)據(jù)庫文件恢復數(shù)據(jù)庫。

調(diào)用該方法時,會刪除原始數(shù)據(jù)并生成未加密的數(shù)據(jù)庫。

參數(shù):

參數(shù)名稱 參數(shù)描述
srcName表示保存未加密數(shù)據(jù)庫文件的名稱。 確保您的應用程序?qū)υ撁Q具有寫入權限。

返回:

如果數(shù)據(jù)庫恢復成功,則返回 true; 否則返回 false。

backup

boolean backup(String destName, byte[] destEncryptKey)

使用指定的加密密鑰以指定名稱備份數(shù)據(jù)庫。

生成的備份已加密。 如果 destEncryptKey 為 null,則生成的備份未加密。 在這種情況下,此方法等效于 RdbStore#backup(String) 方法。

參數(shù):

參數(shù)名稱 參數(shù)描述
destName表示保存數(shù)據(jù)庫備份的名稱。 確保您的應用程序?qū)υ撁Q具有寫入權限。
destEncryptKey指示要備份的數(shù)據(jù)庫的加密密鑰。 它可以與當前數(shù)據(jù)庫的不同。

返回:

如果數(shù)據(jù)庫備份成功返回true; 否則返回 false。

restore

boolean restore(String srcName, byte[] srcEncryptKey, byte[] destEncryptKey)

從指定的加密或未加密數(shù)據(jù)庫文件恢復數(shù)據(jù)庫。

當被調(diào)用時,此方法會刪除原始數(shù)據(jù)并生成一個加密或未加密的數(shù)據(jù)庫,由您的應用程序定義。 如果 srcEncryptKey 和 destEncryptKey 都為 null,則此方法等效于 RdbStore#restore(String) 方法。

參數(shù):

參數(shù)名稱 參數(shù)描述
srcName表示存儲源數(shù)據(jù)庫文件的名稱。 確保您的應用程序?qū)υ撁Q具有寫入權限。
srcEncryptKey表示源數(shù)據(jù)庫的加密密鑰。 如果數(shù)據(jù)庫未加密,則將此參數(shù)的值設置為 null。
destEncryptKey表示恢復的數(shù)據(jù)庫的加密密鑰。如果希望數(shù)據(jù)庫不加密,則將該參數(shù)的值設置為null。

返回:

如果數(shù)據(jù)庫恢復成功,則返回 true; 否則返回 false。

configLocale

void configLocale(Locale locale)

設置數(shù)據(jù)庫區(qū)域設置。

如果數(shù)據(jù)庫是只讀的或數(shù)據(jù)集在事務中,則此方法不可用。 數(shù)據(jù)庫區(qū)域設置好后,可以使用 select from table where column=xxxx COLLATE LOCALES; 或按列 COLLATE LOCALES ASC 從測試訂單中選擇 ; 在本地對數(shù)據(jù)進行排序和查詢。

參數(shù):

參數(shù)名稱 參數(shù)描述
locale指示要設置的語言環(huán)境。

toString

String toString()

獲取數(shù)據(jù)庫存儲的描述。

覆蓋:

類 Object 中的 toString

返回:

返回 RdbStore 的描述。


網(wǎng)站題目:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSRdbStore
文章位置:http://www.5511xx.com/article/djscgsi.html