반응형 티스토리챌린지10 C#, 파일이 사용중인지 체크하기 C#에서 FileInfo 객체를 사용하여 파일이 사용 중인지 확인하려면, 파일을 열 수 있는지 시도하는 방법을 사용할 수 있다. 만약 파일이 이미 다른 프로세스에 의해 사용 중이라면, 예외가 발생할 것이다. 다음은 파일이 사용 중인지 확인하는 간단한 코드 예제다:using System;using System.IO;public class FileUsageChecker{ public static bool IsFileInUse(FileInfo file) { try { using (FileStream stream = file.Open(FileMode.Open, FileAccess.ReadWrite, FileShare.None)) { .. 2024. 11. 14. 마이클 포터(Michael Porter)가 제시한 기업 경쟁 전략 3가지 기업의 경쟁 우위 전략에서 언급되는 세 가지 기본 전략은 원가 우위 (Cost Leadership), 차별화 (Differentiation), 그리고 집중화 (Focus)이다. 이는 마이클 포터(Michael Porter)가 제시한 경쟁 전략으로, 기업이 경쟁에서 성공하기 위해 선택할 수 있는 세 가지 방향이다.원가 우위 (Cost Leadership): 비용을 최소화하여 가격 경쟁에서 우위를 차지하는 전략이다. 대량 생산, 효율적인 운영, 비용 절감 등을 통해 시장에서 가장 낮은 가격을 제공해 경쟁력을 확보하는 것을 목표로 한다.차별화 (Differentiation): 제품이나 서비스에 독특한 특징이나 가치를 부여하여 경쟁사와 차별화하는 전략이다. 고객이 느끼는 제품이나 서비스의 가치를 높여 가격 민감.. 2024. 11. 13. MSSQL, 단어 사이에 세미콜론 넣기 '123' -> '1;2;3;' MSSQL에서 문자열 '123'을 각각의 문자 뒤에 세미콜론을 추가해 '1;2;3;' 형식으로 변환하려면 다음과 같이 사용할 수 있다.FOR XML PATH를 이용한 방법:DECLARE @input VARCHAR(10) = '123';DECLARE @output VARCHAR(MAX);SET @output = STUFF(( SELECT ';' + SUBSTRING(@input, Number, 1) FROM master..spt_values WHERE Type = 'P' AND Number BETWEEN 1 AND LEN(@input) FOR XML PATH('')), 1, 1, '') + ';';SELECT @output AS Result;이 쿼리의 결과는 '1;2;3;'가 된.. 2024. 11. 12. c#, "SqlParameter이(가) 이미 다른 SqlParameterCollection에 들어 있습니다." 에러 처리 현재 사용 중인 코드에서 "SqlParameter이(가) 이미 다른 SqlParameterCollection에 들어 있습니다." 오류가 발생하는 경우, 주로 동일한 SqlParameter 인스턴스를 여러 번 사용하려는 경우가 문제일 수 있다. 이 오류를 방지하려면, parameters 리스트에 포함된 각 파라미터가 다른 SqlCommand에 재사용되지 않도록 해야 한다.문제 코드using (var command = new SqlCommand(query, GetConnection())){ if (parameters != null) { command.Parameters.AddRange(parameters); } command.CommandType = commandType; .. 2024. 11. 11. 함수(Function)과 메소드(Method)의 차이 FUNCTION(함수)과 METHOD(메소드)는 프로그래밍에서 자주 사용되는 개념으로, 서로 유사하지만 몇 가지 중요한 차이점이 있다.정의:함수(Function): 독립적으로 존재하는 코드의 블록으로, 특정 작업을 수행하고 결과를 반환한다. 함수는 데이터를 입력받아 처리하고, 결과를 출력하는 일련의 과정을 정의한다.메소드(Method): 클래스나 객체와 관련된 함수로 정의된다. 메소드는 특정 객체의 데이터를 사용하거나 조작하는 기능을 수행한다. 메소드는 항상 클래스의 일부로 존재하며, 그 클래스의 인스턴스와 연결되어 있다.연관성:함수: 함수는 클래스나 객체에 종속되지 않고, 독립적으로 사용될 수 있다.메소드: 메소드는 객체나 클래스의 인스턴스에 종속된다. 즉, 메소드는 객체의 상태를 변경하거나 객체의 정.. 2024. 11. 10. MSSQL, CDC 원본 테이블이 alter 될 경우 CDC가 활성화된 테이블에서 ALTER 명령어로 테이블 구조가 변경되는 경우에는 몇 가지 중요한 상황이 발생한다. tableA와 같이 이미 CDC가 활성화된 테이블에서 컬럼 추가, 컬럼 삭제, 데이터 타입 변경 등의 구조 변경을 진행할 때, CDC에 미치는 영향에 대해 설명하겠다.1. 테이블 구조 변경 시의 영향새로운 컬럼 추가: tableA에 새로운 컬럼을 추가하면, CDC에 의해 해당 컬럼의 변경 내역이 자동으로 추적되지 않는다. 즉, CDC가 활성화된 이후에 추가된 컬럼은 기본적으로 CDC에서 무시된다. 이러한 경우, CDC 기능이 변경된 스키마를 반영하도록 다시 설정해야 한다.컬럼 삭제: CDC 활성화 이후에 특정 컬럼을 삭제하면, 해당 컬럼에 대한 변경 사항은 더 이상 추적되지 않으며, 변경 로.. 2024. 11. 9. 인코텀즈 2010 인코텀즈 2010(Incoterms 2010)은 국제 상거래에서 무역 거래 조건을 표준화하여 거래 당사자 간의 책임, 비용, 위험 분담을 명확히 규정한 국제 규칙이다. 국제상업회의소(ICC)에서 2010년에 발표한 인코텀즈 2010은 물품의 인도와 관련된 조건을 정의하며, 2020년 개정판이 나오기 전까지 전 세계적으로 널리 사용되었다.인코텀즈 2010에서는 총 11개의 거래 조건이 있으며, 각 조건은 비용과 위험이 어디서 이전되는지를 설명한다. 이를 해상 운송 전용 조건과 모든 운송 방식에서 사용할 수 있는 조건으로 나눌 수 있다.1. 해상 운송 전용 조건 (4가지)이 조건들은 주로 해상 운송이나 내륙 수로 운송에서 사용된다.FAS (Free Alongside Ship, 선측 인도)판매자는 선적항에서 .. 2024. 11. 9. 무역거래 조건에서 수입자 도착조건 무역 거래에서 수입자 도착 조건은 물품이 수입자의 목적지에 도착할 때까지 판매자가 책임을 지는 조건을 의미한다. 이 조건에 해당하는 국제무역 규칙은 인코텀즈(Incoterms)에 따라 여러 가지가 있다. 주요 조건을 설명하면 다음과 같다:DAT (Delivered at Terminal, 터미널 인도) - 인코텀즈 2010:판매자가 지정된 목적지의 터미널(항구, 공항, 도로 터미널 등)에 물품을 도착시키고 하역하는 책임을 진다.이 시점부터 수입자가 비용과 위험을 부담한다.주요 특징: 물품이 도착한 후 터미널에서 하역까지 판매자가 책임진다.DAP (Delivered at Place, 도착지 인도) - 인코텀즈 2010:판매자가 지정된 목적지까지 모든 비용과 위험을 부담한다.도착지에서 물품이 준비되면, 하역은.. 2024. 11. 9. MSSQL, Change Data Capture(CDC)의 장점과 단점 Change Data Capture(CDC)의 장단점과 데이터베이스 성능에 미치는 영향을 정리해 보겠다.CDC의 장점변경 이력 추적 용이성: 데이터베이스 테이블의 변경 사항(INSERT, UPDATE, DELETE)을 손쉽게 추적할 수 있다. 이를 통해 데이터 변경 이력 관리가 쉬워지며, 데이터 복제나 감사 요구사항에 적합하다.실시간 데이터 수집: 데이터 변경을 실시간으로 추적하므로 ETL(Extract, Transform, Load) 작업에서 데이터의 실시간 동기화가 가능하다. 이를 통해 데이터 웨어하우스 구축이나 스트리밍 데이터 파이프라인에 유리하다.기존 애플리케이션 변경 불필요: CDC는 데이터베이스 레벨에서 동작하기 때문에, 데이터 변경 추적을 위해 애플리케이션에 추가적인 코드 변경이 필요하지 않.. 2024. 11. 8. 이전 1 2 다음 반응형