C# 使用c执行SQL查询时出现问题

C# 使用c执行SQL查询时出现问题,c#,sql,execute,C#,Sql,Execute,请帮我解决这个问题。谢谢。我想使用c执行SQL查询并在控制台上获得结果。我想我的代码可能有问题。请查看并让我知道输入。如果要打印查询数据,应运行如下命令: using System; using System.Data.SqlClient; namespace ConsoleCSharp { /// <summary> /// Summary description for Class1. /// </summary> class Data

请帮我解决这个问题。谢谢。我想使用c执行SQL查询并在控制台上获得结果。我想我的代码可能有问题。请查看并让我知道输入。

如果要打印查询数据,应运行如下命令:

using System;
using System.Data.SqlClient;
namespace ConsoleCSharp
{
    /// <summary>
    /// Summary description for Class1.
    /// </summary>
    class DataReader_SQL
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main(string[] args)
        {
            //
            // TODO: Add code to start application here
            //
            try
            {
                SqlConnection thisConnection = new SqlConnection(@"Network Library=dbmssocn;Data 

Source=sourcename,1655;database=Oracle;User id=sysadm;Password=password;");
                thisConnection.Open();
                SqlCommand thisCommand = thisConnection.CreateCommand();
                thisCommand.CommandText = "SELECT * FROM SYSADM.PS_RQ_DEFECT_NOTE where ROW_ADDED_OPRID = 'github'";
                SqlDataReader thisReader = thisCommand.ExecuteReader();
                while (thisReader.Read())
                {
                    Console.WriteLine(thisCommand.CommandText);
                    Console.ReadKey();
                }
                thisReader.Close();
                thisConnection.Close();
            }
            catch (SqlException e)
            {
                Console.WriteLine(e.Message);
            }

        }
    }
}

..在while循环中。

似乎您正在尝试使用SQL本机客户端来正常连接到Microsoft SQL Server,而不是使用Oracle客户端。虽然System.Data.OracleClient命名空间确实存在。相反,您可能需要考虑使用OLED连接与适当的连接字符串进行连接,因此类似于:

Console.WriteLine(thisReader["ROW_ADDED_OPRID"].ToString());

那么这里到底出了什么问题?您提到希望在控制台上获得结果。伟大的你已经有了一个控制台。WriteLine那么你认为你需要做什么才能将结果也写入控制台?另外,如果有机会,请查找参数化SQL查询。您的SQL代码非常不安全。还可以使用's@Arran实际上,我的代码在连接建立之后就退出了,我的SQL查询没有执行。。。从SYSADM.PS\u RQ\u DEFECT\u NOTE中选择*行添加了\u OPRID='github'…它是否返回任何内容?调试这个。在这个读卡器上放置一个断点。读取…检查里面有什么。检查它是否有行。我们无法为您执行此操作。是的,因为数据库中有数据。如果我缺少nything,请检查我的代码并进行注释。您已在while循环中设置了断点是吗?它是否执行/是否进入循环?您需要对此进行调试,放置一个断点,并在应用程序完成每个步骤时进行调试。感谢您的回复。事实上,我的代码没有执行SQL查询,它在连接建立后就退出了。下面是一些SQL查询的示例:只需查看SQL部分。。还请检查连接字符串,可能不正确:请尝试此网站,不同数据库服务器都有连接字符串:[ConnectionString]。
using (OleDbConnection con = new OleDbConnection(@"Network Library=dbmssocn;Data Source=sourcename,1655;database=Oracle;User id=sysadm;Password=password;")
{
    con.Open();
    using (OleDbCommand cmd = con.CreateCommand() )
    {
        cmd.CommandText = "SELECT * FROM SYSADM.PS_RQ_DEFECT_NOTE where ROW_ADDED_OPRID = 'github'";

        using(IDataReader thisReader = cmd.ExecuteReader() )
        {
            while (thisReader.Read())
            {
                Console.WriteLine(thisReader["fieldname"]);
                Console.ReadKey();
            }
        }
    };
}
catch (Exception e)
{
    Console.WriteLine(e.Message);
}