// 初始化数据库
import relationalStore from '@ohos.data.relationalStore';
let rdbStore: relationalStore.RdbStore | null = null;
async function initDatabase() {
const config: relationalStore.StoreConfig = {
name: 'DeviceManager.db',
securityLevel: relationalStore.SecurityLevel.S1
};
rdbStore = await relationalStore.getRdbStore(this.context, config);
await rdbStore.executeSql('CREATE TABLE IF NOT EXISTS device (id INTEGER PRIMARY KEY, name TEXT, type TEXT, status INTEGER, power_consumption REAL, last_used_time INTEGER)');
}
// 插入设备数据
async function addDevice(device: Device) {
if (!rdbStore) return;
const valueBucket: relationalStore.ValuesBucket = {
'id': device.id,
'name': device.name,
'type': device.type,
'status': device.status,
'power_consumption': device.powerConsumption,
'last_used_time': device.lastUsedTime
};
await rdbStore.insert('device', valueBucket);
}
// 查询设备列表
async function queryDevices(): Promise<Device[]> {
if (!rdbStore) return [];
const predicates = new relationalStore.RdbPredicates('device');
const result = await rdbStore.query(predicates, ['id', 'name', 'type', 'status']);
return result.getAllObjects() as Device[];
}
评论