SQL Server 2008 R2에 대해 일부 sql 쿼리를 수행해야합니다. 명령은 다음과 같습니다.C에서 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
과 같은 스탠드 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());
}
}
당신이해야 할 선택이다
CommandText
속성은이 같은 쿼리를 포함해야합니다. 이 응용 프로그램이 커지기 시작하면 (대부분의 응용 프로그램에서 알 수 있듯이) SQL 연결 개체를 사용하고 sproc을 호출해야합니다. 그렇지 않으면 스크립트가 정상입니다. – JonH왜 내 qustion을 downvote? 하나의 SQL Server 인스턴스 APPSDB 아래에 여러 데이터베이스가 있습니다. – ericyoung
@JonH meh; sprocs는 과대 평가 될 수있다; 매개 변수가있는 SQL은 대부분의 경우에 완벽하게 적합합니다. –