首页 > 后端开发 > C++ > 如何在不使用 SQLCMD.exe 的情况下直接在 C# 中执行 SQL 查询?

如何在不使用 SQLCMD.exe 的情况下直接在 C# 中执行 SQL 查询?

Patricia Arquette
发布: 2025-01-05 15:09:39
原创
615 人浏览过

How Can I Execute SQL Queries Directly in C# Without Using SQLCMD.exe?

直接用C#执行SQL查询

问题:

当前系统禁止执行利用 SQLCMD.exe 的批处理文件,需要使用替代方法C#.

解决方案:

利用 SqlCommand 类:

要直接从 C# 执行 SQL 查询,您可以使用SqlCommand 类。该类使您能够构造和执行参数化 SQL 命令,从而避免注入攻击。

示例代码:

以下示例代码演示了如何将 SqlCommand 与参数化 SQL 结合使用:

string queryString = "SELECT tPatCulIntPatIDPk, tPatSFirstname, tPatSName, tPatDBirthday  FROM  [dbo].[TPatientRaw] WHERE tPatSName = @tPatSName";
string connectionString = "Server=.\PDATA_SQLEXPRESS;Database=;User Id=sa;Password=2BeChanged!;";

using (SqlConnection connection = new SqlConnection(connectionString))
{
    SqlCommand command = new SqlCommand(queryString, connection);
    command.Parameters.AddWithValue("@tPatSName", "Your-Parm-Value");
    connection.Open();
    SqlDataReader reader = command.ExecuteReader();
    try
    {
        while (reader.Read())
        {
            Console.WriteLine(String.Format("{0}, {1}",
            reader["tPatCulIntPatIDPk"], reader["tPatSFirstname"]));// etc
        }
    }
    finally
    {
        reader.Close();
    }
}
登录后复制

此代码连接到指定的 SQL Server 实例并打开连接。然后,它使用参数化 SQL 查询创建一个 SqlCommand 对象,并将相关参数添加到命令中。打开连接,执行查询,并使用 SqlDataReader 对象检索结果。

请注意,实际应用中应实现错误处理和连接关闭。

以上是如何在不使用 SQLCMD.exe 的情况下直接在 C# 中执行 SQL 查询?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板