如何在 UWP 中写入只读 sqlite 文件

2023-11-30

所以我是 UWP 新手,在完成连接到 sqlite 后tutorial,我对代码进行了一些修改以尝试新事物。我没有在本地文件夹中创建并保存 sqlite 文件,而是将文件目录更改为安装位置,创建了一个文件夹“data”并在其中添加 sqlite 文件。此时您可以弄清楚我遇到了什么问题。我只能读取/选择表,但无法写入/插入、删除、更新数据库中的记录。我有点期待这个问题,并且我知道其中的原因。我想知道的是:

  • 我可以将安装位置中的只读 sqlite 文件更改为读写吗?如果可以请给我指路。
  • 将数据库文件保留在安装位置是否实用或好主意?或者最好将其保存在本地文件夹中。

这是我的代码:

对于mainpage.xaml

<GridView x:Name="gridView" BorderBrush="Blue" BorderThickness="2" HorizontalAlignment="Left" Margin="34,401,0,0" VerticalAlignment="Top" Height="287" Width="1219">
        <GridView.ItemTemplate>
            <DataTemplate x:DataType="data:Test" x:Name="templateGrid">
                <StackPanel x:Name="stackPanel"  Orientation="Vertical" HorizontalAlignment="Center">
                    <StackPanel x:Name="stack2" Margin="20,20,0,0">
                        <TextBlock FontSize="18" Text="{x:Bind ID}" HorizontalAlignment="Center"></TextBlock>
                        <TextBlock FontSize="10" Text="{x:Bind Name}" HorizontalAlignment="Center"></TextBlock>
                    </StackPanel>
                </StackPanel>
            </DataTemplate>
        </GridView.ItemTemplate>
    </GridView>
    <TextBlock x:Name="textBlock" HorizontalAlignment="Left" Margin="10,112,0,0" TextWrapping="Wrap" Text="Name" FontSize="25" VerticalAlignment="Top"/>
    <TextBox x:Name="textBox" HorizontalAlignment="Left" Margin="132,112,0,0" FontSize="25" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="328"/>
    <Button x:Name="button2" Content="Add" Click="button2_Click" HorizontalAlignment="Left" Margin="516,125,0,0" VerticalAlignment="Top"/>

对于后面的代码:

SQLite.Net.SQLiteConnection conn;
    public MainPage()
    {
        this.InitializeComponent();
        string path = Path.Combine(Windows.ApplicationModel.Package.Current.InstalledLocation.Path, "data", "librarydatatbase.db");
        conn = new SQLite.Net.SQLiteConnection(new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT(), path);
        List<Test> Records = conn.Query<Test>(@"select * from Test");
        gridView.ItemsSource = Records;
    }

    private void button2_Click(object sender, RoutedEventArgs e)
    {
        conn.Execute("insert into Test (Name) values (?)", textBox.Text.ToString());
        List<Test> Records = conn.Query<Test>(@"select * from Test");
        gridView.ItemsSource = Records;
    }

对于sqlite:

create table Test
(
ID integer primary key autoincrement,
Name nvarchar(25)
);

insert into Test (Name) values ("Test value 1")

我收到的错误:

An exception of type 'SQLite.Net.SQLiteException' occurred in SQLite.Net.dll but was not handled in user code

Additional information: ReadOnly

提前致谢。


应用程序的安装目录是只读位置(请参阅文件访问权限)。它用于应用程序代码和资产。

如果您需要对数据库进行写访问,则无法将其放置在应用程序的安装目录中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 UWP 中写入只读 sqlite 文件 的相关文章

  • 如何准备sql语句并绑定参数?

    不幸的是 文档 http www sqlite org完全缺乏示例 这真的很奇怪 就好像它假设所有读者都是优秀的程序员一样 然而 我对C 并且无法真正从文档中弄清楚如何真正准备和执行语句 我喜欢它的实施方式PDO for PHP 通常 我只
  • sqlite 插入需要很长时间

    我正在将不到 200 000 行插入到 sqlite 数据库表中 我只是在终端中通过 sqlite3 使用一个非常简单的 sql 文件 我打赌它已经运行了至少 30 分钟 这是正常现象还是我应该关闭该过程并尝试不同的方法 sqlite中的插
  • Python SQLite SELECT LIKE IN [列表]

    如何在Python中编写SQL查询来选择Python列表中的元素 例如 我有 Python 字符串列表 Names name 1 name 2 name n 和 SQLite table 我的任务是找到最短路线 SELECT element
  • SQLite 在使用之间不保存数据

    我制作了一个包含以下内容的模块 import sqlite3 as sq connection sq connect test db cursor connection cursor cursor execute DROP TABLE IF
  • 错误:找不到模块 \node_modules\sqlite3\lib\binding\electron-v8.0-win32-x64\node_sqlite3.node'

    我在 Electron 8 1 中安装 sqlite3 时遇到问题 我收到以下错误 Error Cannot find module D TASK 2020 1 1 AMS node modules sqlite3 lib binding
  • 迭代 Sqlite-query 中的行

    我有一个表布局 我想用数据库查询的结果填充它 我使用全选 查询返回四行数据 我使用此代码来填充表行内的 TextView Cursor c null c dh getAlternative2 startManagingCursor c th
  • 光标返回错误值 - sqlite - Android

    我正在开发一个短信应用程序 我正在尝试从每次对话中获取最后一条短信 这是我的 SQL 语句 SELECT MAX smsTIMESTAMP AS smsTIMESTAMP id smsID smsCONID smsMSG smsNUM sm
  • 获取总体 CPU 百分比使用率的可能性有哪些

    我有以下问题 在UWP中 我们如何获取总体CPU使用率 RAM使用率 可用RAM 正在运行的进程等 UWP 中的任务管理器需要它 您好 经过一番查看后 您似乎无法获得设备 CPU RAM 和可用 RAM 或正在运行的进程 您可以获得 CPU
  • Android 错误 - close() 从未在数据库上显式调用

    我应该在代码的哪里调用 close LogCat 返回此错误 close 从未在数据库上显式调用 android database sqlite DatabaseObjectNotClosedException 应用程序未关闭此处打开的游标
  • 如何尝试/捕获所有异常

    我正在完成由其他人启动的 UWP 应用程序 该应用程序经常崩溃 我总是陷入困境应用程序 at if global System Diagnostics Debugger IsAttached global System Diagnostic
  • 如何实现 ALTER TABLE 的示例[重复]

    这个问题在这里已经有答案了 我已经多次问过这个问题 但尚未得到完整的答案 如何实现 ALTER TABLE 语句以向数据库添加列 有人可以给我举个例子吗 请阅读SQLite ALTER TABLE 参考 http sqlite org la
  • 如何解决 greenDAO 在执行 InsertOrReplace 时“不存在这样的表错误”?

    我正在使用 greenDAO 并且已成功生成所有必需的类和实体 并且我可以看到我的表已创建 但是在要替换的行上放置断点后 我收到一条错误消息 告诉我 不存在这样的表错误 try appTimeUsageDao insertOrReplace
  • 为什么有些 UWP 项目有 project.json 而有些则没有?

    我可以看到一些 UWP 项目具有 project json 文件 并且所有 NuGet 包条目都包含在 project json 中 但有些 UWP 项目没有 project json NuGet 包条目包含在 csproj 文件本身中 为
  • 如何以编程方式退出或关闭 Javascript UWP 应用程序? (Windows 10)

    我制作了一个游戏 它需要自己的退出按钮 我无法使用CoreApplication Exit https msdn microsoft com en us library windows apps windows applicationmod
  • Android:打开和关闭SQLite数据库

    我正在开发Android应用程序 我经常在其中访问本地数据库 该数据库可以从不同的主题访问 因此我遇到了数据库的协调问题 我使用以下open and close method public void open mDb mDbHelper g
  • sqlite3从打印数据中删除括号

    我创建了一个脚本 用于查找数据库第一行中的最后一个值 import sqlite3 global SerialNum conn sqlite3 connect MyFirstDB db conn text factory str c con
  • Flutter:将字符串转换为 Map

    我正在使用 SQFlite 在本地存储数据 我有一个表 其中有一个名为 json 的字段 该字段的类型为 TEXT 并存储转换为字符串的 json 例如 name Eduardo Age 23 性别男 到目前为止 一切正常 但随后我需要从数
  • 填充 CoreData 创建的 sqlite 数据库

    我有一个由 CoreData 模型自动创建的 sqlite DB 但我的应用程序不会让用户能够将数据写入其中 而是我想用程序所需的所有数据预先填充它 我的问题是 CoreData 创建的 sqlite DB 具有未知的表和字段 这些表和字段
  • 如何在 sqlite 中将 2 列合并为新列

    我有一个包含 3 列的表 我必须将 2 列中的值按降序排列到一列中 A B C z 1 2 f 5 7 s 9 5 使用此示例 输出会将 B 列和 C 列中的值放入其中 如下所示 A B s 9 f 7 f 5 s 5 z 2 z 1 我当
  • 如何在 Android 中使用 Assets 中预加载的 SQLite 数据库

    我想用preloaded database在我的应用程序中意味着尝试在安装 apk 时获取数据库 以便可以使用已保存在其中的数据 我复制了 成分 db 文件位于资产文件夹中 并使用以下代码 但这会出现错误 从资源文件复制数据库时出现问题 我

随机推荐

  • 如何将加载文本/图像添加到仍在使用 jQuery 加载的图像中?

    我需要将其应用于 jQuery 选择器选择的图像 例如 img 应该将其应用于页面中的所有图像 jquery 在元素加载时加载图像 https stackoverflow com adding a loading image to dyna
  • 在 TCP 流中发送消息

    TCP 是基于流的 这意味着您发送的字节不一定位于 消息 中 因此接收方可能会收到一半消息或三分之二的消息 因此 在每条消息都是固定大小的游戏中 如果我收到消息的一部分 我可以将其保留在缓冲区中 直到收到另一部分 这有点繁琐 但是还有其他基
  • 如何计算传输和接收的网络利用率

    如何使用 C 或 shell 脚本计算传输和接收的网络利用率 我的系统是嵌入式linux 我当前的方法是记录收到的字节 b1 等待1秒 然后再次记录 b2 然后知道链接速度 我计算所使用的接收带宽的百分比 接收利用率 b2 b1 8 lin
  • C++ 字符串和字符串文字比较

    所以我想简单地做一个std string string literal 这会工作得很好 除了我正在创建我的字符串 std string str strCreateFrom 0 strCreateFrom find 并找到回报string n
  • gnuplot如何给出动态绘图的列号?

    我正在自动执行使用 gnuplot 创建小图的任务 我需要传递要绘制的数据文件中的列号 pfile system echo file colnum system echo colnum plot pfile using 4 column c
  • 实体框架代码优先非常慢

    从广泛的谷歌搜索来看 我似乎不是第一个遇到这个问题的人 但我一直找不到能够令人满意地解决它的人 我正在与遗留数据库集成 我只是试图与单个表集成 目前 但我对该模型的第一次查询需要大约 12 秒左右的时间来执行 正如预期的那样 第二个电话几乎
  • pip3 无法在 ubuntu 20.04 上工作:“没有属性‘SourceFileLoader’”

    在 Ubuntu 20 04 上 我使用以下命令安装了 pip3 sudo apt install python3 pip 但当我跑步时pip3我收到以下错误 Traceback most recent call last File usr
  • 无法在 Unity 5.3.4 中使用 facebook sdk 和 google play 一起构建 android

    我在我的项目中使用 facebook unity sdk 7 3 0 和 GooglePlayGamesPlugin 0 9 32 它不允许我为 android 构建并失败并出现错误 无法将类转换为 dex 格式 有关详细信息 请参阅控制台
  • 在组合框/列表框中启用鼠标滚轮滚动

    我正在使用 VBA 在 Excel 2007 中构建用户窗体 并且想知道如何启用组合框和列表框的鼠标滚轮滚动 我是否需要更新版本的 Office 才能获得此功能 还是可以通过编码实现此功能 如果使用 32 位 Windows 则解决方案为彼
  • 比较大量 PDF 文件的工具? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我需要比较大量 PDF 文
  • stl 中的错误,系列少于两个周期(错误?)

    I have 两年的月度数据 but stl 似乎至少需要两年零一个月 这是两个简单的例子 示例 1 返回 stl x 周期性 中的错误 系列不是周期性的或周期少于两个 dat 24 lt cumsum rnorm 24 x 24 lt t
  • 在 R 上的 igraph 中查找大型数据集中的根顶点

    假设您有一个根据边列表创建的图 并且有数百个顶点 我想要做的是确定所有后续顶点都与之相关的初始顶点集 例如母亲或家谱 这是一个代表 冰岛 的数据集 即从冰川上脱落并漂浮在海上的大型平板状冰片 初始裂缝代表根节点 随后的顶点是对这些较小碎片
  • 使用参数调用宏:Python win32com API

    我想做的是从我的 python 代码中调用宏 这是来源示例 xl win32 gencache EnsureDispatch Excel Application xl Visible 1 xl Workbooks Open C Progra
  • gsub 无法删除 R 中的空括号

    我在 R 中有以下字符串 A lt A 23 56 hh 我想得到以下输出 A 23 56 hh 我尝试了以下代码 B lt gsub pattern replacement x A 这没有产生预期的结果 我怎样才能完成同样的任务 Try
  • 在 Javascript 中获取对象任意级别的元素

    鉴于以下情况 var a JSON parse fst data1 snd ind2 data2 var index fst var res a index res data1 var index2 var res2 a index2 re
  • Microsoft 2010 Visual C,安装FLTK

    MSV2010C 的 FLTK 问题 我正在关注 编程 使用 C 的原理和实践 尝试让 FLTK 正确运行时遇到了麻烦 我为自己工作过一次 然后就再也没有了 我已详细说明了下面所采取的步骤 如果有人能注意到任何奇怪的地方 我将不胜感激 我的
  • 成功使用后几​​天后“未找到”RVM

    我几天前安装了RVM 运行得很好 几天后 现在 我猜是在重新启动几次之后 shell 说它就像没有安装一样rvm not found虽然我可以在我的眼中看到这一切 rvm文件夹 还有一个scripts文件夹到那个 我尝试重新运行安装脚本 但
  • 如何为Rails 3站点中的每个页面设置不同的背景图像?

    我正在尝试弄清楚如何为 Rails 3 站点的每个页面设置不同的背景图像 我怎样才能做到这一点 而不必重复每个页面的 css 文件中的内容 application html erb div class container div class
  • 如何阻止 Eclipse 编辑器在 RCP 中关闭

    我正在开发基于 Eclipse 的 RCP 我们需要防止用户关闭打开的编辑器之一 期望的行为是 用户单击编辑器窗口中的 X 或 CTRL W 弹出一个对话框 显示 如果您关闭此编辑器 您的活动将停止 您想这样做吗 如果他们点击 是 它就会关
  • 如何在 UWP 中写入只读 sqlite 文件

    所以我是 UWP 新手 在完成连接到 sqlite 后tutorial 我对代码进行了一些修改以尝试新事物 我没有在本地文件夹中创建并保存 sqlite 文件 而是将文件目录更改为安装位置 创建了一个文件夹 data 并在其中添加 sqli