在c#中执行sql命令的最佳方法

时间:2013-02-01 18:11:20

标签: c# sql-server sqlcommand sqlcmd

我需要对sql-server 2008 R2做一些sql查询。命令是:

C:> sqlcmd –S
.\APPSDB
1> use
Example_database
2> go
1> Select SiteName, SiteID, Platform, Description, AdminUser from dbo.ExampleInfo
2> go

我想在C#中开发一个控制台应用程序来运行此查询。我的问题是:做到这一点的适当方法是什么?我应该将上述命令放入SQL脚本并使用进程来执行此脚本,还是应该使用诸如SqlConnection之类的stand C#SQL API来执行此操作?类似的东西:

string cmdStr = @"....." //the above command
using (var connection = new SqlConnection(ConnectionString))
{
    using (var command = connection.CreateCommand())
    {
        connection.Open();
        command.CommandText = cmdStr;
        using (var reader = command.ExecuteReader())
        {
            do
            {
                while (reader.Read())
                {             
                    Console.WriteLine(reader["SiteName"].ToString());
                    Console.WriteLine(reader["SiteName"].ToString());
                    // the rest
                }
            Console.WriteLine("--next command--");
        } while (reader.NextResult());
    }
}

1 个答案:

答案 0 :(得分:1)

此处不需要sqlcmd

CommandText属性应该只包含这样的查询:

string cmdStr = @"Select SiteName, SiteID, Platform, Description, AdminUser 
                  from dbo.ExampleInfo";