82 lines
2.7 KiB
Plaintext
82 lines
2.7 KiB
Plaintext
import { createSQLiteContext } from '../uni_modules/ak-sqlite/utssdk/app-android/index.uts'
|
||
import { createSQLiteContextOptions } from '../uni_modules/ak-sqlite/utssdk/interface.uts'
|
||
//创建查询的上下文
|
||
export const sqliteContext = createSQLiteContext({
|
||
name: 'ble.db',
|
||
} as createSQLiteContextOptions);
|
||
|
||
// 初始化所有表
|
||
export function initTables() {
|
||
const sql = `
|
||
|
||
CREATE TABLE IF NOT EXISTS ble_event_log (
|
||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||
device_id TEXT,
|
||
event_type TEXT,
|
||
detail TEXT,
|
||
timestamp INTEGER
|
||
);
|
||
CREATE TABLE IF NOT EXISTS ble_data_log (
|
||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||
device_id TEXT,
|
||
service_id TEXT,
|
||
char_id TEXT,
|
||
direction TEXT,
|
||
data TEXT,
|
||
timestamp INTEGER
|
||
);
|
||
`;
|
||
console.log(sql); // 打印建表语句,便于调试
|
||
sqliteContext.executeSql({
|
||
sql: sql,
|
||
success: function(res) { console.log('SQLite表已创建', res); },
|
||
fail: function(err) { console.error('SQLite表创建失败', err); }
|
||
});
|
||
}
|
||
|
||
// 测试插入一条 ble_data_log 日志
|
||
export function testInsertDataLog() {
|
||
sqliteContext.executeSql({
|
||
sql: `
|
||
INSERT INTO ble_data_log (device_id, service_id, char_id, direction, data, timestamp)
|
||
VALUES ('test_device', 'test_service', 'test_char', 'send', 'test_data', ${Date.now()})
|
||
`,
|
||
success: (res) => { console.log('插入 ble_data_log 成功', res); },
|
||
fail: (err) => { console.error('插入 ble_data_log 失败', err); }
|
||
});
|
||
}
|
||
|
||
// 测试查询所有 ble_data_log 日志
|
||
export function testQueryDataLog() {
|
||
sqliteContext.selectSql({
|
||
sql: `SELECT * FROM ble_data_log ORDER BY timestamp DESC`,
|
||
success: (res) => { console.log('查询 ble_data_log 成功', res); },
|
||
fail: (err) => { console.error('查询 ble_data_log 失败', err); }
|
||
});
|
||
}
|
||
|
||
// 测试更新 ble_data_log(将 data 字段改为 'updated_data',只更新最新一条)
|
||
export function testUpdateDataLog() {
|
||
sqliteContext.executeSql({
|
||
sql: `
|
||
UPDATE ble_data_log
|
||
SET data = 'updated_data'
|
||
WHERE id = (SELECT id FROM ble_data_log ORDER BY timestamp DESC LIMIT 1)
|
||
`,
|
||
success: (res) => { console.log('更新 ble_data_log 成功', res); },
|
||
fail: (err) => { console.error('更新 ble_data_log 失败', err); }
|
||
});
|
||
}
|
||
|
||
// 测试删除 ble_data_log(删除最新一条)
|
||
export function testDeleteDataLog() {
|
||
sqliteContext.executeSql({
|
||
sql: `
|
||
DELETE FROM ble_data_log
|
||
WHERE id = (SELECT id FROM ble_data_log ORDER BY timestamp DESC LIMIT 1)
|
||
`,
|
||
success: (res) => { console.log('删除 ble_data_log 成功', res); },
|
||
fail: (err) => { console.error('删除 ble_data_log 失败', err); }
|
||
});
|
||
}
|