GO 명령을 사용하여 대규모 SQL 스크립트 실행
질문: C# 프로그램에서 GO 명령이 포함된 대규모 SQL 스크립트를 실행하는 방법은 무엇입니까? SqlCommand.ExecuteNonQuery()가 GO 문을 인식하지 못합니다.
답변: GO 구분 기호를 인식하는 SQL Server 관리 개체(SMO)를 사용하세요.
샘플 코드:
<code class="language-csharp">public static void Main() { string scriptDirectory = "c:\temp\sqltest\"; string sqlConnectionString = "Integrated Security=SSPI;" + "Persist Security Info=True;Initial Catalog=Northwind;Data Source=(local)"; DirectoryInfo di = new DirectoryInfo(scriptDirectory); FileInfo[] rgFiles = di.GetFiles("*.sql"); foreach (FileInfo fi in rgFiles) { FileInfo fileInfo = new FileInfo(fi.FullName); string script = fileInfo.OpenText().ReadToEnd(); using (SqlConnection connection = new SqlConnection(sqlConnectionString)) { Server server = new Server(new ServerConnection(connection)); server.ConnectionContext.ExecuteNonQuery(script); } } }</code>
대체 라이브러리 옵션:
대안으로 GO 구분 기호가 포함된 SQL 스크립트를 처리하기 위해 특별히 Phil Haack의 라이브러리를 고려할 수 있습니다. https://www.php.cn/link/1288625a4bdcf1109ff5adca3bd33753
위 내용은 C#에서 GO 명령을 사용하여 대규모 SQL 스크립트를 실행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!