问题标签 [sqlite-net-pcl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1901 浏览

c# - Xamarin Forms 无法创建 SQLite 数据库

我正在使用 Xamarin.Forms 构建一个新项目,并且我想使用 SQLite 来存储用户数据。我正在使用.Net 标准项目。我在所有 4 个项目(共享代码、机器人、ios 和 uwp)中安装了 Frank A. Krueger 的 sqlite-net-pcl NuGet 包。正如文档告诉您的那样,我在所有项目中创建了 IFileHelper 接口和实现该接口的类。当我第一次启动应用程序时,我想在数据库中插入一些默认值,但我得到了一个异常。我一直在调试,当在 App.xaml.cs 文档上创建数据库时,它只返回 null,所以我没有得到任何数据库。

我一遍又一遍地检查了所有代码,一切都很好,所以我只是想知道 sqlite-net-pcl 是否与 .NET 标准项目兼容?这个问题有什么解决办法吗?

这是 App.xaml.cs 上的代码

我当我返回数据库时,它只返回 null,所以当我在 AppDatabase 类上创建表时,我得到了异常System.AggregateException: One or more errors occurred.

我理解这个例外,因为数据库是空的,我不能聚合任何表或任何东西,因为数据库不存在,但为什么它不创建数据库?

这是共享代码的接口

以及在 droid 项目上实现接口的类:

谢谢

0 投票
1 回答
834 浏览

xamarin - Xamarin Sqlite-pcl-net 列的最大值

我正在使用 Frank A. Krueger 的最新版本的 Sqlite-net-pcl Nuget。

我需要从表 AccountMasterModel 中获取 AccountNumber 列的最大值。

我试过这个

我称这个kmethod如下

代码为我成功执行。即使我在 AccountNumber 列中有值 23 和 54,我也总是得到最大值 0。实际上我最多需要 54,但我只得到 0。在这里需要帮助。

0 投票
1 回答
1686 浏览

xamarin - 是否有将现有 SQLite 数据库添加到 Xamarin 项目的正确方法?

我找到的每个示例都会为您创建数据库,然后让您创建表并在代码中填充它们。不过,我的问题是我想在其他地方(SQLiteStudio)创建和填充数据库,然后将其包含在我的应用程序中。

我感觉(通过...的一般感觉...无论我一直在看什么。我们将其称为文档)您应该将数据库复制到Environment.SpecialFolder.Personal目录中。所以我的工作流程是将数据库作为资源包含,然后将其复制到Environment.SpecialFolder.Personal目录中。那正确吗?有没有人简洁而权威地写下这些(而不是松散的文章集)?

我不希望有同一个数据库的两个副本,但如果这是其他人都在做的事情,那么......好吧。

我无法在以下任何网页上找到答案。

0 投票
1 回答
505 浏览

xamarin - 查询中的 Xamarin SQLite-Pcl-Net DateTIme

我正在使用 Xamarin Prism 和 Sqlite-pcl-net Nuget 。

当我编写查询以获取一系列日期之间的表元素时,如下所示

StartD 和 EndD 是 Format 的 DateTime 数据类型的变量:

开始D MM/dd/yyyy 00:00:00

EndD MM/dd/yyyy 23:59:59

执行此查询后,我得到一个

这意味着在 StartD 的时间。我希望您知道数据库中的 StartD 需要 12:00:00Am。如果我必须做出更多澄清,请发表评论。

0 投票
1 回答
237 浏览

xamarin.forms - SQLiteAsyncConnection -> CreateTablesAsync() 需要两个类型参数

OS/X Mac Xamarin 窗体 Visual Studio Pro 2017

我正在尝试学习 Mosh Hamedani 关于 Xamarin 表单的精彩课程。我尝试从第 89 课中编写相同的代码:

但是......我得到了错误:

使用泛型方法 ... CreateTablesAsync < t1 , t2 > () 需要 2 个类型参数

但即使是Xamarin 文档也没有这么说!它仅显示您希望创建表的表类类型的一个类型参数。

我该如何解决这个问题?

0 投票
1 回答
2987 浏览

xamarin.forms - 使用 Sqlite-net-pcl 创建多个表

我正在使用 xamarin 表单和 Sqlite-net-pcl (nuget)。我需要有关创建多个表的帮助。我已经设置了如下要求。我需要执行以下操作:

1)我需要在应用程序启动时创建表和数据库。如何在 App.cs 中执行此操作?

更新问题:

1) 未创建表。为什么?

- - - - 更新 :

提前致谢。

0 投票
1 回答
345 浏览

xamarin.forms - xamarin 形成不在 db3 文件中的 sqlite-net-pcl 表

我正在尝试使用本地 sqlite db 制作一个跨平台应用程序,并且我得到了 IOS 和 Android 设置。

我到了可以使用“adb.exe and pull”获取数据库的地步。我使用 Sqlite 的 DB 浏览器来查看 db 文件。该文件没有表。

但是当我查看代码中的 SQLiteConnection 时,我可以看到这些表,如果我查询,我会得到数据。

有任何想法吗?

- 更新

也许我应该提到。我正在使用带有 Xamarin 表单和 sqlite-net-pcl 的 Visual Studio

0 投票
2 回答
442 浏览

sqlite - 使用 sqlite-net-pcl 和 Xamarin.Forms 访问数学函数

在编写 C# 控制台应用程序并使用 System.Data.SQLite 时,我能够执行 SQL 命令,例如:

但是,当我尝试在 Xamarin.Forms 中使用类似的命令,使用 sqlite-net-pcl 包时,我收到以下错误: SQLite.SQLiteException: 'no such function: cos'

我在 SO(Xamarin.iOS 中的自定义 SQLite 函数)上找到了类似的问题。但是,我并没有完全理解这个反应。我现在有以下问题:

1) 我可以在 Xamarin.Forms 中使用 sqlite-net-pcl 制作自定义 SQL 函数吗?如果是这样,有人可以分享一个简单(但完整)的例子来说明如何做到这一点吗?2) 我是否可以访问在 C# 中编写控制台应用程序时可以访问的相同数学函数(pow、cos、sin 等)?3)还有其他方法可以做到这一点吗?例如,我可以将数据库中的列读入列表,然后执行所需的数学函数,并将其反馈回数据库吗?对于大型数据库,这会是一个糟糕的主意吗?

提前致谢,

达斯汀

0 投票
0 回答
1013 浏览

c# - C# SQLite-Net 扩展“SQLiteConnection 不包含 CreateTable 的定义”

我正在尝试在 WinForms 应用程序中使用 SQLite-Net Extensions NuGet 包。我在一个类中包含了一个参考,并试图遵循此处找到的文档:

https://bitbucket.org/twincoders/sqlite-net-extensions

然而,在这个例子中,有一些东西被遗漏了。

没有 Utils 类,所以我想我会创建自己的 SQLiteConnection 对象,CreateTable 扩展方法将变得可用,但结果是错误的。有人可以告诉我我做错了什么吗?

0 投票
0 回答
42 浏览

c# - 进行更新时是否需要在 SQLite 方法中调用 lock()?

我有更新 SQLite 数据库中数据的方法,如下所示:

有人向我提到“为什么在代码中调用 lock”,但我不确定答案。

有人可以告诉我在 SQLite 中进行简单更新时是否有必要像这样调用 lock ?