new IdoDBManager()
Classe que permite a gestão dos bancos IDO do Engine que está em execução.
Importante: a criação de bancos de dados IDO normalmente ocorre em cenários com concorrência
de execução. Deve ser utilizada classe CriticalSection a fim de garantir que a criação da
base de dados seja realizada por uma única sessão JavaScript.
Example
criticalSection.enter(criticalSectionName);
try {
const db = idoDBManager.databaseExists(dbName)
? idoDBManager.loadDatabase(dbName)
: idoDBManager.createDatabase(dbName);
if (db.tableExists(tableName)) {
return db.loadTable(tableName);
} else {
const ds = new DataSet(db);
ds.fieldDefs.add(fieldDefs);
ds.create(tableName);
return ds;
}
} finally {
criticalSection.leave(criticalSectionName);
}
Methods
-
createDatabase(name)
-
Cria uma base de dados IDO.
Os dados das tabelas da base de dados serão gravados em arquivos no diretório `<engine.dataDir>/appdbs' e serão preservados após a finalização do Engine.
Parameters:
Name Type Description namestring Nome da base de dados a ser criada.
Returns:
Instância da base de dados IDO criada.
- Type
- IdoDB
-
createTempDatabase( [dbName] [, options])
-
Cria uma base de dados IDO temporária.
Por padrão, as bases de dados temporárias são mantidas enquanto o Engine estiver em execução. Esse comportamento pode ser modificado por meio da opção
autoDrop. Ao ativar essa opção, a base temporária será mantida apenas enquanto houver sessões Javascript que a referenciem, sendo uma opção recomendada para bases de dados temporárias utilizadas por uma única sessão JavaScript.Parameters:
Name Type Argument Description dbNamestring <optional>
Nome da base de dados a ser criada. Caso não seja informado, será criada uma base de dados com nome aleatório com a opção
autoDropativa, não sendo possível reabrir essa base de dados posteriormente pelo métodoloadDatabase.optionsObject <optional>
Opções de criação da base de dados.
Properties
Name Type Argument Description autoDropboolean <optional>
Cria uma base de dados temporária que é removida automaticamente caso não esteja mais em uso.
Returns:
Instância da base de dados IDO criada.
- Type
- IdoDB
-
databaseExists(name)
-
Verifica se já existe uma base de dados IDO.
Parameters:
Name Type Description namestring Nome da base de dados que será verificada a sua existência.
Returns:
Retorna o valor
truese a base de dados existir.- Type
- boolean
-
deleteDatabase(name)
-
Remove uma base de dados.
Parameters:
Name Type Description namestring Nome da base de dados que será removida.
-
loadDatabase(name)
-
Carrega uma base de dados IDO.
Parameters:
Name Type Description namestring Nome da base de dados que será carregada.
Returns:
Instância da base de dados IDO carregada.
- Type
- IdoDB
-
renameDatabase(oldName, newName)
-
Renomeia uma base de dados persistente.
Este método não pode ser utilizado em bases de dados temporárias.
Parameters:
Name Type Description oldNamestring Nome atual da base de dados.
newNamestring Novo nome da base de dados.