有关Android Room Persistence Library(Android架构组件的一部分)的相关问题
如何在文本可组合项需要该值之前从 roomDatabase 检索该值,使其不显示 null?
在我的应用程序中,文本可组合项调用 roomViewModel 来显示 energyState,但它显示为 null。我希望观察者(文本可组合项)显示“能量”列的值
如何访问我的房间数据库中的变量以更新我的房间数据库中的 StateFlow 变量?
如果我需要电子邮件来检索“energy”变量,并且在 mainActivity 中初始化 roomDatabase 后找到了电子邮件,如何从 roomDatabase 中检索“energy”变量? 这是我的...
我的代码可以在没有 KMP 的 Android 项目上运行。我正在将其迁移到 KMP 和 Compose MP,但应用程序随机崩溃。我尝试更改一个 Flow 的值,这使得其他 Flow 发出新值...
找不到 Room.databaseBuilder() ,Java
我正在尝试使用 room 作为数据库来构建一个 Android 应用程序。在初始化数据库时,我似乎在使用 room.database.databaseBuilder() 方法时遇到问题。我总是收到错误:不能...
我正在尝试使用 room 作为数据库来构建一个 Android 应用程序。在初始化数据库时,我似乎在使用 room.database.databaseBuilder() 方法时遇到问题。我总是收到错误:不能...
Android Room 数据库忽略问题“尝试了以下构造函数,但它们无法匹配”
我的实体类: @Entity(表名 = "学生") 数据类学生( 变量名称:字符串, 变量年龄:Int, 变量 gpa:双倍, var isSingle:布尔值, @PrimaryKey(autoGener...
我的应用程序中有 Room 数据库,其中有一个迁移步骤,用于读取应用程序私有文件夹并相应地填充数据库。如果数据库不为空,当我运行它时迁移效果很好...
如何扩展Room数据库的@TypeConverter或者是否需要扩展?
我有一个数据类: @Parcelize 数据类任务( var 任务:字符串, var 完成:布尔值 = false ) : 可分包 以及我的 Room 数据库的相应类型转换器: 对象转换器 { ...
我正在一个简单的项目中尝试 Room 和 Coroutines Flow 可观察量,但遇到了 Flow 多次发出的问题。 在应用程序中,我正在从用户的...
使用 Android Studio 数据库检查器清除 ROOM 数据库条目
我正在 Android Studio 上尝试使用 ROOM Database Inspector。 我想使用检查器上的查询清除数据库中的所有条目,而不必卸载然后重新安装...
我尝试这样做。 在我的表中,我有一行 lp,我尝试这样做: @Query("set @i = 0; SELECT @i:=@i+1, ad.* * FROM linked_note ad where order_id = :order_id and c_id = 0") 实时数据 我尝试这样做。 在我的桌子上有一行 lp,我尝试这样做: @Query("set @i = 0; SELECT @i:=@i+1, ad.* * FROM added_note ad where order_id = :order_id and c_id = 0") LiveData<List<NoteEntity>> findNotesByOrder(long order_id); 但它不起作用。当我尝试构建我的应用程序时,它无法工作且无法编译。我看到一个错误 这是我的错误: org.gradle.api.internal.tasks.compile.CompilationFailedException: Compilation failed; see the compiler error output for details. at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:52) at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:37) at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:98) at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:51) at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:37) at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:35) at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:25) at org.gradle.api.internal.tasks.compile.incremental.IncrementalResultStoringDecorator.execute(IncrementalResultStoringDecorator.java:41) at org.gradle.api.internal.tasks.compile.incremental.IncrementalResultStoringDecorator.execute(IncrementalResultStoringDecorator.java:27) at org.gradle.api.internal.tasks.compile.incremental.IncrementalAnnotationProcessingCompiler.execute(IncrementalAnnotationProcessingCompiler.java:50) at org.gradle.api.internal.tasks.compile.incremental.IncrementalAnnotationProcessingCompiler.execute(IncrementalAnnotationProcessingCompiler.java:36) at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:156) at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:126) at com.android.build.gradle.tasks.factory.AndroidJavaCompile.compile(AndroidJavaCompile.java:92) at sun.reflect.GeneratedMethodAccessor803.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73) at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:50) at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39) at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:124) at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336) at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328) at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199) at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:113) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:95) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:73) at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51) at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59) at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54) at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59) at 我相信该消息是说您有一个 ';'(分号),因此您正在尝试运行 2 个查询。你不能。 但是,SELECT 之前的部分,即set @i = 0;,如果删除分号,则会导致失败(除非这是我没有遇到过的功能)。它似乎是 SQLite UPDATE 语句的 SET 部分,如果是这样,则 SQLite 无效。因为这只是建议整个查询的猜测,所以没有建议修复。
我在我的应用程序中创建了一个房间数据库,我可以使用我编写的函数向其中添加数据,但我无法检索它们。我的目标只是保存用户名和电子邮件并在...时检索它们
@PrimaryKey(autoGenerate = true) 插入的ID始终为0
我的实体 @PrimaryKey(自动生成 = true) @ColumnInfo(名称 = "exploitsId") 变量 ID:长 = 0 变量名称:字符串? = 空 构造函数(id:长,名称:字符串){ 这个.id = id 这个名字...
如何在 Jetpack Compose 中使用房间数据库检索和更新项目?
我正在尝试在jetpack compose中开发一个简单的笔记应用程序。我已经成功开发了一个应用程序,它接受文本字段输入并使用房间数据库保存它们,然后在...
我的应用程序将导航与房间和撰写结合使用,我的问题是启动应用程序时,会在本地数据库中进行检查,以及用户是否选择了要记住的选项
最初一切正常,但后来我向数据库添加了一个表。我已经擦除了所有数据并重新开始,所以我认为这不是迁移问题。 初始表正在正常工作...
Android Studio:为什么无法从房间数据库表中检索信息?
我对 Android studio 比较陌生。我正在开发一个使用蓝牙和房间数据库的项目。我对这两个教程都使用了 Philipp Lackner 教程(因为这篇文章是关于 Room 的,所以我已经链接到...
Room 如何知道如何将 TypeConverter 函数与适当的数据类型相匹配?
我创建了一个虚拟实体类: @实体 数据类实体( @首要的关键 val id: Long?=null, val data1:数据类1? = 空, val data2:数据类2? = 空 ) 数据类 DataClass1( ...
在具有 WasmJs 支持的 KMM 项目中实现 Room 数据库
我正在构建一个支持Android、iOS、桌面(jvm)和Web(wasmJs)的KMP项目... 在其中,我正在实现用于数据库存储的 Room。 由于 WasmJS 不支持 Room,所以我创建了一个新的源...
我的数据库将数据存储在收据和文件实体中。这些实体具有一对多关系(一张收据可以有多个文件)。我需要选择带有文件的收据,但不是