C# ADO.NET을 이용한 SQL Server 데이터 생성, 수정 및 삭제 구현
1. 데이터 추가 (INSERT)
ADO.NET의 SqlCommand 객체를 사용하여 데이터베이스에 새로운 레코드를 삽입할 수 있습니다. ExecuteNonQuery() 메서드는 SQL 문을 실행한 후 영향받은 행(row)의 수를 반환하므로, 이를 통해 작업 성공 여부를 판단할 수 있습니다.
// 1. 연결 문자열 설정
string connectionString = "Server=.;DataBase=AcademyDB;Uid=sa;Pwd=password123";
...
8월 29일 07:48에 게시됨
ETL 프로세스를 활용한 데이터 웨어하우스 구축
데이터 웨어하우스 구축 과정에서 ETL(Extract, Transform, Load)은 핵심적인 역할을 수행합니다. ETL은 다양한 소스 시스템에서 데이터를 추출하고, 분석에 적합한 형태로 변환한 후, 최종적으로 데이터 웨어하우스에 적재하는 일련의 절차를 의미합니다.
ETL 프로세스 개요
ETL 프로세스는 크게 데이터 추출(Extract), 데이터 변환(Transform), 데이터 적재(Load) 세 단 ...
8월 14일 13:55에 게시됨
SQL Server 인덱스 내부 구조 심층 분석
인덱스 설계는 데이터베이스 성능에 결정적인 영향을 미치는 중요한 요소입니다. 그러나 적절한 인덱스를 설계하는 것은 쉽지 않으며, 많은 개발자들이 부적절한 인덱스 생성으로 인해 오히려 성능 저하를 경험하기도 합니다. 이처럼 인덱스는 데이터베이스 성능에 있어 양날의 검과 같습니다.
이전 글에서는 인덱스의 논리적 구조와 개념적 측면에 대해 다루었습니다. 이 ...
8월 3일 15:57에 게시됨
SQL Server 원격 데이터베이스 복사 방법: 데이터 이입을 통한 밀접형 복제
기능:
원격 서버에 데이터베이스 A를 백업
장기간 운영되는 데이터베이스의 로그 파일 크기 줄이기
절차:
0. 원격 기능 활성화
소스 데이터베이스에서 SQL 스크립트 생성
새 대상 데이터베이스 생성 및 소스 스크립트 실행으로 구조 복제
데이터 이입을 위한 SQL 문 생성
대상 데이터베이스에서 데이터 이입 SQL 실행
원격 기능 활성화
EXEC sp_configure 'show advanc ...
8월 2일 02:42에 게시됨
SQL Server 데이터 페이지와 익스텐트 구조
페이지와 익스텐트
SQL Server에서 데이터 저장의 기본 단위는 페이지입니다. 여덟 개의 연속된 페이지가 모여 익스텐트를 구성하며, 이는 페이지 관리를 효율화합니다. 모든 SQL Server 버전에서 페이지와 익스텐트를 관리하는 데이터 구조를 이해하는 것은 고성능 데이터베이스 설계의 핵심입니다.
페이지 기본 구조
데이터 파일(.mdf/.ndf)의 디스크 공간은 0부터 n까 ...
7월 26일 06:52에 게시됨
SQL Server 내부 데이터 페이지 분석을 위한 DBCC 명령어 활용
DBCC의 기본 개념과 사용 목적
DBCC(Data Base Console Command)는 SQL Server에서 데이터베이스의 내부 상태를 진단하고 조작하기 위한 시스템 명령어 집합이다. 이 명령어들은 주로 개발자나 유지보수 엔지니어가 데이터베이스의 물리적 구조, 페이지 구성, 인덱스 배치 등을 분석할 때 사용된다. 특히 공식 문서에 포함되지 않은 비공개 명령어들도 존재하며, 이들 역 ...
7월 19일 16:07에 게시됨
SQL Server 서비스 재설치 가이드
문제 발생 경위
SQL Server 서비스는 오래된 문제를 안고 있는 컴포넌트로, 권한 설정 과정에서 오류가 발생하여 정상적으로 동작하지 않게 되었습니다. 구체적인 오류 메시지는 기억나지 않지만, 이후 Navicat 설치 시도 중 해당 툴도 비정상 종료되는 문제가 발생했고, 결국 SQL Server 서비스 복구 작업을 진행하게 되었습니다.
완전 제거 절차
재설치 전 기존 설치본 ...
7월 15일 04:48에 게시됨
SQL Server에서 서버 내 파일 목록 조회하기
SQL Server에서 특정 디렉토리의 파일 목록을 가져올 때 주로 사용되는 방법은 xp_dirtree와 xp_cmdshell 확장 저장 프로시저입니다. 각각의 장단점이 있으므로 상황에 맞게 선택할 수 있습니다.
방법 1: xp_dirtree 활용 (권장)
xp_dirtree는 디렉토리 탐색 전용 확장 저장 프로시저로, 별도의 보안 설정 없이 테이블 형태로 결과를 반환합니다. xp_cmdshell을 활성화할 ...
7월 2일 06:44에 게시됨
Entity Framework Core를 이용한 SQL Server, MySQL, SQLite 연동
.NET 7 환경에서 Entity Framework Core (EF Core)를 사용하여 SQL Server, MySQL, SQLite 데이터베이스를 연동하는 방법을 설명합니다. 먼저, .NET 7 콘솔 애플리케이션을 생성하고 필요한 NuGet 패키지를 설치합니다.
1. 프로젝트 설정 및 NuGet 패키지 설치
.NET CLI를 사용하여 프로젝트를 생성하고 EF Core 관련 패키지를 설치합니다. 사용하는 데이터베이스 ...
6월 22일 20:36에 게시됨
SQL Server 예외 처리
SQL Server는 TRY...CATCH 구조를 사용하여 TSQL 문의 오류 처리를 구현합니다. TRY 명령은 문 실행을 모니터링하고, TSQL 문에서 심각도 수준(severity level)이 10보다 크고 20보다 작은 예외가 발생하면 CATCH 명령이 예외 오류를 포착합니다.
BEGIN TRY
{ sql_statement | statement_block }
END TRY
BEGIN CATCH
[ { sql_statement | statement_bl ...
6월 20일 02:35에 게시됨