개발/C# 3

[C# - MariaDB] Multi line Insert 함수

DB에 data를 insert할 때, 한번에 insert 해야하는 개수가 적다면 하나씩 하나씩 insert 구문을 작성 후 "ExecuteNonQuery" 메소드를 실행하면 되었다. 그러나 개수가 점점 많아지면 많아질 수록 동작시간이 기하급수적으로 늘었고 주기적으로 Query문을 실행 하는 Timer의 주기 동안에도 Insert 구문이 다 실행되지 않아 DB Connection이 끊기는 등의 오류가 발생하였다. 해당 문제를 해결하기 위해 BulkInsert를 검색하여 찾아보았지만 DataTable로 구현해놓지 않은 과거의 나에게 발목이 잡혀 BulkInsert는 뛰어넘고 다른 방법을 찾던중, Heidi SQL이라는 프로그램에서 "데이터베이스에서 SQL로 내보내기" 기능을 사용하면 아래의 사진과 같이 한 ..

개발/C# 2022.06.25

[system.reflection.targetinvocationexception] 잘 동작하던 exe 파일 동작 안하는 경우

어제까지는 잘 동작했고, 해당 디바이스가 아닌 다른 디바이스에서는 잘 동작하는 괴이한 상황에 빠져서 디버깅 중 아래와 같은 문구를 확인하게 되었습니다. "system.reflection.targetinvocationexception 호출 대상이 예외를 throw했습니다 " "레지스트리에서 잘못된 인덱스 ''을(를) 읽었기 때문에 카운터 이름 데이터를 로드할 수 없습니다" 의 오류는 아래의 코드에서 발생한 것이 었고, 레지스트리 설정이 뒤틀려 성능 카운터 기능을 활용 할 수 없었던 것으로 파악했습니다. (발생 이유를 찾아보아야 하겠습니다.) PerformanceCounter cpu_s = new PerformanceCounter("Processor", "% Processor Time", "_Total");..

개발/C# 2022.06.02