DB · SQL Server
SQL Server (MSSQL)
마이크로소프트가 만든 상용 관계형 데이터베이스입니다. 윈도우·.NET 생태계와 잘 맞물려, 마이크로소프트 기술을 쓰는 기업에서 많이 사용해요.
한 줄로
SQL Server? 도 테이블에 데이터를 저장하고 SQL? 로 다루는 관계형 DB입니다. 마이크로소프트 제품이라 윈도우 서버, .NET, Azure 같은 MS 생태계와의 통합이 강점이에요.
SQL Server는 "마이크로소프트 정품 매장에서 함께 파는 DB". 윈도우·비주얼 스튜디오·Azure 같은 다른 MS 제품과 한 묶음처럼 매끄럽게 맞물립니다.
왜 / 어디에 쓰나
- .NET 백엔드 — C#·ASP.NET 으로 만든 기업 시스템의 기본 DB
- 윈도우 환경 — 윈도우 서버 인프라와의 자연스러운 통합
- 관리 도구 — SSMS 등 강력한 GUI 관리·분석 도구 제공
- 클라우드 — Azure SQL 등 MS 클라우드와의 연계
핵심 개념과 특징
| 항목 | 설명 |
|---|---|
| 상용 제품 | 유료. 무료 학습용 Express·Developer 에디션도 제공. |
| T-SQL | SQL Server의 SQL 확장(Transact-SQL). 변수·흐름제어·프로시저 작성. |
| IDENTITY | 자동 증가 기본키를 만드는 방식(MySQL의 AUTO_INCREMENT에 해당). |
| 방언(Dialect) | SQL 기본은 공통이되 함수·문법 일부가 다름(예: TOP, GETDATE()). |
기본 SQL과 방언
관계형 DB라 SELECT·INSERT·JOIN 등 기본 SQL은 다른 DB와 공통입니다. 다만 일부는 T-SQL만의 방식이에요.
-- 기본 조회 (공통) SELECT id, userid, name FROM tb_user WHERE name LIKE '%han%' ORDER BY name; -- SQL Server 방언: 행 개수 제한은 TOP SELECT TOP 10 * FROM tb_user; -- SQL Server 방언: 현재 시각 SELECT GETDATE();
T-SQL — SQL Server의 절차 언어
-- 변수와 흐름 제어를 갖춘 T-SQL DECLARE @cnt INT; SELECT @cnt = COUNT(*) FROM tb_user; IF @cnt > 0 PRINT '사용자 있음';
PostgreSQL이 오픈소스로 표준과 고급 기능에 강하다면, SQL Server는 마이크로소프트 생태계와의 통합과 상용 지원이 강점입니다. SQL 기본은 같으니 방언 차이만 익히면 됩니다.
이 프로젝트와의 관계
이 학습 프로젝트는 오픈소스인 PostgreSQL 을 씁니다. 대상 시스템이 SQL Server라 해도, JPA 로 작성한 자바 코드는 대부분 그대로 두고 드라이버와 Dialect 설정만 바꿔 연결할 수 있어요. "SQL 공통 + 방언 차이"가 여기서도 핵심입니다.
다음 단계
- 이 프로젝트가 실제로 쓰는 DB → PostgreSQL
- 다른 DB와 비교 → MySQL, Oracle
- 자바에서 DB 다루기 → JPA