HarmonyOS 数据库无法开启事务?

relationalStore.RdbStore.beginTrans() 无法使用,提示:

Error: Capability not support. 

文档有描述该接口仅支持向量数据库使用。但是没看到相关使用指导,也搜索不到相关向量数据库信息。不清楚是否跟beginTransaction有使用的差异,或者需要进行什么配置。

阅读 442
1 个回答

报错内容为能力不支持,可以确实是因为该方法在关系型数据库中无法使用,以下为向量数据库与关系式数据库的区别:1、向量数据库与关系型数据库并不完全相同;

2、向量数据库指的是 提供向量索引的数据库;

3、向量数据同关系型数据一样存储在关系表里;

4、向量索引的一大特点是: 寻找与指定向量的TopN近的向量。

如:

let sqlCreateTable = "CREATE TABLE IF NOT EXISTS test (id INTEGER PRIMARY KEY, repr floatvector(8));";
let sqlInsert = "INSERT INTO test VALUES(1, '[1.2, 0.3, 3.2, 1.6, 2.5, 3.1, 0.8, 0.4]');";
let sqlQuery = "SELECT id FROM test order by repr <-> '[1.1, 0.3, 2.2, 6.6, 1.5, 3.1, 0.6, 0.2]' limit 3;";

普通关系式数据库使用beginTransaction就行。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进