C#에서 .SQL 스크립트 파일을 실행하려면 특별한 고려 사항이 필요합니다. 이 질문은 여러 줄에 걸쳐 분할된 명령문을 포함할 수 있는 이러한 파일을 실행하는 데 따른 어려움에 대해 설명합니다.
도전과제와 해결책
ODP.NET의 ExecuteNonQuery를 사용하여 스크립트를 실행하려는 시도는 효과적이지 않은 것으로 나타났습니다. sqlplus를 호출하는 프로세스를 생성하면 중단 및 출력 리디렉션에 문제가 발생했습니다.
Microsoft SQL Server Management Objects(SMO)를 사용한 솔루션
여기에 제시된 솔루션은 SQL Server 관리 및 구성을 위한 관리 코드 API인 SMO를 활용합니다. 다음은 이 접근 방식을 보여주는 코드 조각입니다.
<code class="language-csharp">using Microsoft.SqlServer.Management.Smo; using Microsoft.SqlServer.Management.Common; using System.IO; using System.Data.SqlClient; public partial class ExcuteScript : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string sqlConnectionString = @"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ccwebgrity;Data Source=SURAJIT\SQLEXPRESS"; string script = File.ReadAllText(@"E:\Project Docs\MX462-PD\MX756_ModMappings1.sql"); SqlConnection conn = new SqlConnection(sqlConnectionString); Server server = new Server(new ServerConnection(conn)); server.ConnectionContext.ExecuteNonQuery(script); } }</code>
이 방법은 다음과 같습니다.
위 내용은 C#에서 여러 줄 SQL 스크립트 파일을 효율적으로 실행하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!