使用 ADO.net 和 SQL 中的特殊字符

2023-12-24

我想在 Winforms 中编写一个小型应用程序,我可以在其中编写一些单词并使用 ADO.net 将它们写入 SQL 数据库。

当我想编写带有占位符的字符串时遇到麻烦,例如:

Give me your '%s' right now!

我的数据库中记录的是:

Give me your **"%s"** right now!

如何通过 C# 更改传输到数据库的字符串来克服这个问题?

这是我的代码的一部分:

 public virtual int Split(global::System.Nullable<int> ID, object SplitXMLDoc, string CreatedBy)
 {
            global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[4];
            if ((ID.HasValue == true)) {
                command.Parameters[1].Value = ((int)(ID.Value));
            }
            else {
                command.Parameters[1].Value = global::System.DBNull.Value;
            }
            if ((SplitXMLDoc == null)) {
                command.Parameters[2].Value = global::System.DBNull.Value;
            }
            else {
                command.Parameters[2].Value = ((object)(SplitXMLDoc));
            }
            if ((CreatedBy == null)) {
                command.Parameters[3].Value = global::System.DBNull.Value;
            }
            else {
                command.Parameters[3].Value = ((string)(CreatedBy));
            }
            global::System.Data.ConnectionState previousConnectionState = command.Connection.State;
            if (((command.Connection.State & global::System.Data.ConnectionState.Open) 
                        != global::System.Data.ConnectionState.Open)) {
                command.Connection.Open();
            }
            int returnValue;
            try {
                returnValue = command.ExecuteNonQuery();
            }
            finally {
                if ((previousConnectionState == global::System.Data.ConnectionState.Closed))
 {
                    command.Connection.Close();
                }
            }
            return returnValue;
        }

您使用参数化sql。

string val = "'%s'".Replace("'","\"");
string sql = "INSERT Into Table1 (value) values (@Value)";
SqlCommand cmd = new SqlCommand(sql, connection);
cmd.Parameters.AddWithValue("@Value",val);
cmd.ExecuteNonQuery();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ADO.net 和 SQL 中的特殊字符 的相关文章

随机推荐

  • java中的String hashCode是预先计算好的吗?

    当我说Java时 String str abcd str hashCode 我的问题是Hashcode什么时候计算 第1行还是 第2行 我假设哈希码是预先计算的 每当字符串更新时 哈希码也会 也许 更新 或者是另一种方式 即每次你打电话时s
  • 如何定位数组中的负数,以获得所有正数的总和?

    我试图弄清楚如何定位数组中的负数 我有这个 function SummPositive array SummPositive 1 2 3 4 5 2 23 1 13 10 52 这是一个包含负数和正数的数组 当我不知道数组中有多少个负数时
  • php:按键值迭代函数参数

    我有一个 php 函数function foo bar1 bar2 bar3 是否有可能获取参数名称和值动态地 I found func get args http php net manual de function func get a
  • 我可以使用 Google Script API 部署绑定脚本吗

    Google 最近发布了新的 Google Script API 我认为这是一个实现期待已久的项目的好机会 上下文如下 企业 GSuite 域中的一些用户共享约 100 张具有相同目的的表 我想用侧边栏来增强这些工作表 以显示附加信息等 我
  • 如何在 Qt 中解析 XML 字符串

    我正在开发一个应用程序 在创建 Web 服务后 我收到了来自服务器的响应 该响应位于 XML 标记中 响应 r n
  • 递归地应用复杂的泛型类型

    谢谢一个答案 https stackoverflow com questions 58409603 generate a type where each nullable value becomes optional来自 Nit 我有一个通
  • 在reactjs中将字符串作为html

    我有一个返回多行 html 的函数 如下所示 render function var badges user get achievements badges map function badge var str h3 span span h
  • 在命令窗口中禁用自动滚动

    我在 Matlab 中编写的许多代码都有非常详细的输出 当程序运行时 信息被打印到命令窗口 并且每换行一次 窗口就会自动滚动到底部 当我想更仔细地阅读一些输出或向上滚动以查看较旧的输出时 这会成为一个问题 我可以向上滚动 但只能直到打印出新
  • 在 Delphi 中通过 COM 对象使用 .Net 类有时会挂起

    我有一组用 Delphi NET NET 1 1 编写的库 我想在我的 Win32 Delphi 应用程序中使用它们 对于与性能相关的问题 我决定采用 COM 路线 有时 在重建 DLL 后 当我尝试实例化通过 COM 公开的对象时 Win
  • 如何在没有配置的情况下设置分页链接的样式 - codeigniter

    我有以下分页样式 ul class pagination li a href i class fa fa long arrow left i Previous Page a li li class active a href 1 a li
  • 我有一个程序,我想比较带来日期并带来所需的数据

    我将所有详细信息写在我有两个名为 GAZZETED DAYS 的表 其中包含列 GAZZETED DATE DESCRIPTION PAY IN OUT 包含列 EMP CODE ATT DATE 请检查我已经粘贴在 dbfiddle 中的
  • 从 Azure Blob 存储下载文件

    我有一个应用程序 允许用户上传存储在 Azure Blob 存储中的照片 用户还可以查看这些照片 要查看它们 我们希望应用程序将图像下载到默认下载位置 目前 上传工作完美 但我发现Azure API的下载功能似乎没有做任何事情 另外 我无法
  • 在显示用户数据的视图表中更改和保存 mysql 用户数据

    我有一个表 显示从 mysql 表中获取的用户数据 我希望使其可以在该表的单元格内编辑 我已经使用 php 在 文本 类型输入字段中显示数据 如代码所示 为了重新提交更改的数据 我将表行包装在表单中 但问题是表单数据没有重新提交 我想让用户
  • Fluent nHibernate 自动映射属性为 nvarchar(max)

    使用流畅的 nhibernate 和自动映射 nhibernate 创建我的数据库模式 我如何让 nhibernate 基于以下类在数据库中创建 nvarchar max 列 public class VirtualPage BaseEnt
  • C# 中的动态字符串格式化

    我创建了接受字符串的 log 方法 当我想使用它时 我会写这样的内容 Log string Format Message 0 AdditionalInfo 我应该如何实施Log方法以便能够使用字符串Format但不必在方法参数中显式编写 L
  • 404 Not Found,但 Laravel 5.4 中存在路由

    我正在使用 PhpStorm 我可以运行并打开index php 但是当我想按提交按钮 登录后 时 它显示 404 未找到 在 Windows 10 上运行的 Web 服务器 Apache 2 4 这是我的家 这是我的路线 我不完全确定为什
  • .dynamicType 已弃用。使用“类型(...)”代替

    我刚刚更新到 Xcode 8 和 iOS 10 使用旧版 Swift 语言版本 尝试再次编译我的项目一直是一种痛苦 即使仍然使用旧的 Swift 语法 这次我的函数之一使用NSBundle forClass self dynamicType
  • 如何调试从完全信任进程启动器启动的 .exe

    我在同一解决方案中构建了一个 UWP 应用程序和一个 WPF 应用程序 我正在使用 FullTrustProcessLauncher 类从 UWP 应用程序启动 WPF 应用程序 我还使用 App Service Connection 类来
  • 查找嵌套数组中符合条件的第一个元素

    我有以下文件 doc1 array field ABC enabled false field BCD enabled true field DEF enabled false field XYZ enabled true doc2 arr
  • 使用 ADO.net 和 SQL 中的特殊字符

    我想在 Winforms 中编写一个小型应用程序 我可以在其中编写一些单词并使用 ADO net 将它们写入 SQL 数据库 当我想编写带有占位符的字符串时遇到麻烦 例如 Give me your s right now 我的数据库中记录的