dev.syw

SQL Server가 무엇인지, 데이터베이스의 기본 구조를 이해합니다.

MSSQL 시작하기

MSSQL(Microsoft SQL Server) 은 마이크로소프트가 만든 관계형 데이터베이스 관리 시스템(RDBMS)입니다. 기업용 백엔드에서 가장 널리 쓰이는 DB 중 하나죠. 이 레슨에서는 데이터베이스의 기본 개념을 잡고, SQL Server에 접속해 첫 쿼리를 직접 실행해 봅니다.

학습 목표

  • 관계형 데이터베이스(RDBMS)와 MSSQL이 무엇인지 이해합니다.
  • 테이블·행·열·기본키 같은 핵심 용어를 익힙니다.
  • SSMS와 sqlcmd로 SQL Server에 연결하는 방법을 배웁니다.
  • SELECT 쿼리를 작성하고 실행합니다.

관계형 데이터베이스란?

데이터를 표(table) 형태로 저장하고, 표들 사이의 관계(relation) 로 데이터를 연결합니다. 엑셀 시트를 떠올리면 쉽습니다. 시트가 테이블이고, 한 줄이 행, 한 칸의 속성이 열이에요. 다만 RDBMS는 표끼리 키로 연결하고, 동시에 수많은 사용자가 안전하게 읽고 쓰도록 설계되어 있습니다.

용어설명
테이블행과 열로 이루어진 데이터의 집합
행(row)하나의 레코드 (예: 학생 한 명)
열(column)속성 (예: 이름, 나이)
기본키(PK)행을 유일하게 식별하는 열
외래키(FK)다른 테이블의 PK를 참조하는 열

예를 들어 학생 정보를 담는 테이블은 이렇게 생겼습니다.

id (PK)namegrade
1민수3
2영희2
3철수4

여기서 id 는 각 학생을 유일하게 구분하는 기본키입니다. 같은 id 값을 가진 행은 두 개 존재할 수 없어요.

💡 TIP — MSSQL은 SQL 표준을 따르면서도 T-SQL(Transact-SQL) 이라는 자체 확장 문법을 제공합니다. 변수 선언, 흐름 제어(IF/WHILE), 저장 프로시저 등이 T-SQL의 영역입니다.

SQL Server에 연결하기

SSMS (SQL Server Management Studio)

가장 많이 쓰는 GUI 도구입니다. 무료로 내려받아 설치한 뒤, 접속 창에 다음 정보를 입력합니다.

항목예시
서버 이름localhost, .\SQLEXPRESS, 192.168.0.10,1433
인증Windows 인증 또는 SQL Server 인증
로그인sa (SQL 인증인 경우)

sqlcmd (명령줄)

터미널에서 빠르게 쿼리를 실행할 때 유용합니다.

# SQL 인증으로 접속
sqlcmd -S localhost -U sa -P "YourPassword" -d SchoolDB

# Windows 인증으로 접속 (-E)
sqlcmd -S localhost -E -d SchoolDB

접속 후에는 쿼리를 입력하고 GO 를 입력하면 실행됩니다.

SELECT name, grade FROM Students;
GO

⚠️ 주의sa 계정에는 강력한 비밀번호를 설정하고, 가급적 운영 환경에서는 권한이 제한된 별도 계정을 사용하세요. sa 노출은 흔한 보안 사고의 원인입니다.

첫 쿼리

가장 기본적인 데이터 조회 쿼리입니다.

SELECT name, grade
FROM Students
WHERE grade >= 3
ORDER BY name ASC;

위 쿼리는 Students 테이블에서 3학년 이상 학생의 이름과 학년을, 이름 오름차순으로 가져옵니다. SQL 문장은 크게 다음 순서로 읽으면 이해하기 쉽습니다.

  1. FROM — 어느 테이블에서
  2. WHERE — 어떤 조건의 행을
  3. SELECT — 어떤 열을
  4. ORDER BY — 어떤 순서로

💡 TIP — SQL 키워드는 대소문자를 구분하지 않지만, 가독성을 위해 키워드는 대문자로 쓰는 관례가 있습니다. 문장 끝의 세미콜론(;)도 권장됩니다.

요약

  • MSSQL은 마이크로소프트의 관계형 데이터베이스이며, T-SQL 문법을 사용합니다.
  • 데이터는 테이블(행·열)로 저장되고, 기본키로 각 행을 유일하게 식별합니다.
  • SSMS(GUI) 또는 sqlcmd(CLI)로 서버에 접속할 수 있습니다.
  • 조회의 기본은 SELECT ... FROM ... WHERE ... ORDER BY 입니다.

연습문제

  1. 테이블, 행, 열, 기본키의 차이를 각각 한 문장으로 설명해 보세요.
  2. Students 테이블에서 2학년 학생의 이름만 가져오는 쿼리를 작성하세요.
  3. sqlcmd로 Windows 인증을 사용해 SchoolDB 에 접속하는 명령을 작성하세요.

힌트 — 2번은 WHERE grade = 2, 3번은 -E 옵션을 떠올리세요.

💡 연습문제 풀이

불러오는 중…

함께 보면 좋은 자료

댓글 0

MSSQL” 강좌에 대한 댓글입니다.

댓글을 작성하려면 로그인이 필요합니다.