将 Unicode 字符串存入 SQLite 数据库

2023-12-14

我需要一些关于将 unicode 字符串插入 SQLite 数据库的 Visual Studio C# 代码方面的帮助。

下面是我将测试字符串写入数据库的测试代码:

         string testStr = "á Á ñ ç é á";

         SQLiteConnection mydataConnection = new SQLiteConnection();  // setup new sql connection obj
         try
         {
             ////                    SQLite DB
             mydataConnection.ConnectionString =
             "Data Source=C:\\Users\\John\\Desktop\\location.db; Version=3; UseUTF16Encoding=True;Synchronous=Normal;New=False"; // set up the connection string

             mydataConnection.Open();  // open the connection to the db

             SQLiteCommand myCmd = new SQLiteCommand();   // create a new command object
             myCmd.Connection = mydataConnection;   // whats its connected to, see above connection string


             SQLiteParameterCollection myParameters = myCmd.Parameters; // good pratice to use parameters to pass data to db
             myParameters.AddWithValue("@name", testStr);  //
             myCmd.CommandText = "INSERT INTO location (name) VALUES (@name)";
             myCmd.ExecuteNonQuery();
         }
         catch (SQLiteException d)
         {
             string myerror = "Database Error" + d;
             MessageBox.Show(myerror);
         }
    finally  // good pratice to close db connection in a finally so exceptions dont leave open.
         {
             mydataConnection.Close();
         } 

当我查看数据库/表(使用 SQLite Administrator)时,字符串如下所示: à à à à à à

作为测试,我可以使用 SQLite Administrator 将字符串直接复制并粘贴到数据库中,然后保存该字符串,然后可以正常查看。

我尝试切换“UseUTF16Encoding=True;”对/错 - 没有区别。

任何想法我做错了什么。


这个问题原来是我用来查看/检查数据库/数据的 SQLite Administrator 应用程序的问题。似乎是这个应用程序在我的代码插入时无法正确显示字符。奇怪的是,如果您使用 SQLite Administrator 应用程序直接添加测试文本(通过将测试字符串复制并粘贴到表/字段中),它将显示、保存并随后查看“确定”。无论如何,现在使用 SourceForge SQLite 数据库浏览器来检查我的代码是否正确写入,并且一切似乎都按顺序进行。

非常感谢任何花时间发表评论的人,希望这对其他人有帮助。

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

将 Unicode 字符串存入 SQLite 数据库 的相关文章

随机推荐

  • 如何添加、编辑和删除数据库的逗号分隔值。?

    我创建了一个名为角色的表 字段类似于 角色ID 角色 禁止进程 禁止端口 这里角色ID是唯一的 我有一个逗号分隔的 prohibitedprocess 字段值 例如 prohibitedprocess gt skype teamviwer
  • Foundation 中的 Google 地图 API 显示模式无法正确显示 [重复]

    这个问题在这里已经有答案了 可能的重复 Reveal Modal 内的 Google Map API 未完全显示 我有一个位于 Reveal Modal 中的 Google Map API 对于那些不知道那是什么的人来说 它基本上是一个隐藏
  • spring-boot 基本 JSP 404 未找到

    无法使用 spring boot 加载非常简单的 JSP 页面 出现 404 Not Found src main java SampleWebJspApplication java Configuration EnableAutoConf
  • 在类中实现 Spinner 类型对象作为子进程

    我是一个完全的初学者 今天才开始上课 我试图制作一种 旋转器 对象 我可以称之为这样的东西 我感到困惑的一件事是是否使用 线程 线程 或 过程 我刚刚在某处读到 一个线程实例的成本为 8meg 因为这是一个简单的文本旋转器 它不保证使用大量
  • 使用 C 的 Beaglebone 黑色 PWM

    我用 C 语言为 beaglebone black 编写了一个示例 pwm 函数 每当我在其他模块或 main 中进行函数调用时 我都会遇到分段错误 请帮助我在哪里犯了错误以及如何处理这个问题 下面是代码 int trigger pwm o
  • 在渲染视图之前测量视图

    我需要找出将视图附加到其父视图后会有多大 我已经重写了这个方法 onMeasure int int 但看起来只有当我实际使用以下方法将自定义视图添加到其容器时才会调用此方法 addView myView 您认为有没有办法在渲染视图本身之前获
  • 编译OpenSSL时.rodata和-fPIC是什么意思?

    我正在尝试编译 openssl 但遇到错误 使用的 CFLAGS 是 O2 fPIC fno strict overflow 有人可以向我解释一下是什么吗 rodata下面这句话是什么意思 usr bin ld libcrypto a wp
  • 查找最近的观察结果 - R

    我有两组 已排序的 POSIXct 时间序列 如下所示 set seed 123 ll sort strptime 16 07 2015 format d m Y 10 3600 1 3600 round rnorm 3600 digits
  • 使用 OwnerDrawText 模式定位和突出显示 TreeView 节点文本

    我的问题 我正在尝试创建一个TreeView这会将与搜索词匹配的节点文本部分加粗 我的代码被采用于这个问题 我有相同 类似的问题 有或没有ImageList使用过 但我会在这里发布未使用的版本 当我渲染文本时 我得到类似这样的结果 其中文本
  • php合并json数组

    array 1 PlayerID 17794204 userName Vandiel castleCount 9 NotUpd 1476253231000 PlayerID 21532584 userName Mayland castleC
  • ASP.NET MVC 中的 jQuery AJAX 响应

    甚至不确定这是否是标题问题的正确方式 我知道我的 AJAX 调用都是错误的 这就是我现在正在做的事情 顺便说一句 我正在使用 ASP NET MVC 后端 I use jQuery ajax将一些数据发布到操作 该操作将加载我在响应中捕获的
  • 我可以使用 Box::from_raw 从 Vec::into_boxed_slice 释放内存吗?

    I saw以下代码用于将字节数组返回给 C repr C struct Buffer data mut u8 len usize extern C fn generate data gt Buffer let mut buf vec 0 5
  • 如何用Delphi 5创建Telnet客户端

    如何在 Delphi 5 应用程序中创建 Telnet 客户端 ICSFrancois Piette 的 Internet Component Suite 有一些有用的组件 http www overbyte be eng products
  • MySQL 查询返回重复行

    我有一张桌子mytable像下面这样 product tag lot 1111 101 2 1111 102 5 2222 103 6 3333 104 2 4444 101 2 5555 101 2 5555 102 5 6666 102
  • XPath 中的逻辑或?为什么不是|在职的?

    我有一个 XSLT 模板 它对所有级别的主题进行计数 用于在我拥有的 DITA 项目中用编号来标记这些主题
  • 自定义 Win32 的保存文件对话框

    我正在尝试使用保存文件GetSaveFileName并希望在我的保存文件对话框的底部有几个额外的弹出窗口 以允许用户指定更多选项 我正在尝试遵循MSDN 文档 具体来说资源管理器式定制 关于这个主题 但似乎无法让我的自定义项目出现 我相信我
  • Python Pillow 透明 gif 不起作用

    我正在尝试制作以下图标旋转的 gif 为了尝试实现这一目标 我使用 Pillow 库在 Python 中运行以下代码 from PIL import Image ImageDraw images icon Image open camera
  • Android 点击地图并获取坐标[重复]

    这个问题在这里已经有答案了 我正在尝试制作一个应用程序 一旦用户点击地图 它就会获取该特定点的坐标 除其他外 我还读到 在android中点击地图获取坐标 这似乎是最相关的帖子 但我想要做的是能够点击地图上的任何位置而不是标记 覆盖项目 事
  • JavaScript 闭包和内存泄漏

    我在 Jquery in Action 中读到 JavaScript 闭包可能会导致内存泄漏 意外的闭包可能会产生意想不到的后果 例如 循环引用可能导致内存泄漏 一个典型的例子是创建引用闭包变量的 DOM 元素 从而防止这些变量被回收 有人
  • 将 Unicode 字符串存入 SQLite 数据库

    我需要一些关于将 unicode 字符串插入 SQLite 数据库的 Visual Studio C 代码方面的帮助 下面是我将测试字符串写入数据库的测试代码 string testStr SQLiteConnection mydataCo