Files
akbleserver/ak/sqlite.uts
2026-03-16 10:37:46 +08:00

82 lines
2.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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); }
});
}