본문 바로가기
DB 기본 개념 다지기

MSSQL 테이블 만들기 CREATE TABLE

by 양블로그 2024. 2. 7.
반응형

 

 

데이터베이스에 여러 개체가 포함되어 있는데, 이 개체들 중에서 실제 데이터를 가지고 있는 개체가 바로 테이블입니다. 테이블은 행(row)과 열(column)의 조합으로 이루어져 있으며, 각 행은 특정 데이터를 나타내고 각 열은 데이터의 특정 유형을 정의합니다. 테이블은 데이터베이스의 중심적인 요소 중 하나로, 데이터베이스의 다양한 작업을 수행하는 데 사용됩니다.

반응형

 

CREATE TABLE 문으로 테이블 만들기

아래는 MSSQL에서 테이블을 만드는 기본적인 예시입니다. 이 예시에서는 'employees'라는 테이블을 만들어보겠습니다. 이 테이블은 직원의 정보를 저장할 것입니다.

CREATE TABLE dbo.employees (
    employee_id INT PRIMARY KEY,
    first_name VARCHAR(50),
    last_name VARCHAR(50),
    email VARCHAR(100),
    hire_date DATE
);


위의 SQL 문은 다음을 수행합니다:

  • CREATE TABLE : 새로운 테이블을 생성합니다.
  • dbo : 스키마를 지정합니다. 스키마는 데이터베이스 안에서 개체들을 또 한번 그룹으로 묶을 수 있는 계층입니다. 기본 스키마가 바로 dbo인데, dbo 스키마는 생략해도 됩니다.
  • employees : 테이블의 이름을 지정합니다.
  • (  ) : 테이블의 열(Column)을 정의합니다.
  • employee_id INT PRIMARY KEY : 직원의 고유한 식별자인 employee_id를 정수형(INT)으로 선언하고, 이를 주요 키(PRIMARY KEY)로 설정합니다. 주요 키는 각 행을 고유하게 식별하는 역할을 합니다.
  • first_name, last_name, email : 각각 직원의 이름, 성, 이메일을 저장하는 열을 선언합니다. VARCHAR는 가변 길이 문자열을 의미하며, 최대 길이를 지정할 수 있습니다.
  • hire_date DATE : 직원의 입사일을 나타내는 열을 선언합니다. DATE는 날짜를 나타내는 데이터 형식입니다.

 


테이블 생성 시 주의할 점

MSSQL에서 CREATE TABLE 문을 사용할 때 몇 가지 주의할 점이 있습니다. 이러한 주의사항은 데이터베이스 설계의 효율성, 데이터 무결성, 보안 등을 고려하여 테이블을 만들 때 중요합니다. 몇 가지 주요한 주의사항은 다음과 같습니다:

 

  1. 주요 키(PK) 정의: 테이블에서 주요 키는 각 행을 고유하게 식별하는 데 중요합니다. 테이블을 생성할 때 각 행에 대해 고유한 값을 보장하는 주요 키를 정의해야 합니다. 이는 데이터의 무결성을 유지하고 효율적인 데이터 검색을 보장합니다.

  2. 열의 데이터 형식 선택: 각 열의 데이터 형식을 올바르게 선택해야 합니다. 적절한 데이터 형식을 선택하면 저장 공간을 절약하고 데이터 무결성을 유지하는 데 도움이 됩니다. 또한, 올바른 데이터 형식을 선택하면 데이터 검색 및 조작이 더욱 효율적으로 이루어질 수 있습니다.

  3. 제약 조건 추가: 테이블을 생성할 때 데이터 무결성을 강화하기 위해 제약 조건(Constraints)을 추가해야 합니다. 예를 들어, 외래 키(Foreign Key) 제약 조건을 사용하여 데이터 일관성을 유지할 수 있습니다.

  4. 인덱스 추가: 필요한 경우 테이블에 인덱스를 추가하여 데이터 검색 속도를 향상시킬 수 있습니다. 자주 검색되는 열에 인덱스를 추가하면 쿼리의 성능이 향상될 수 있습니다.

  5. 보안 고려: 테이블을 생성할 때 데이터베이스 및 테이블 수준의 보안을 고려해야 합니다. 필요한 사용 권한을 부여하여 불필요한 접근을 방지하고 데이터의 기밀성을 보호해야 합니다.

  6. 네이밍 규칙 준수: 테이블 및 열의 명명 규칙을 준수하여 코드의 가독성을 높이고 유지 보수를 용이하게 합니다. 명명 규칙은 일관된 방식으로 테이블 및 열을 명명하는 것을 권장합니다.

    이러한 주의사항을 고려하여 테이블을 생성하면 데이터베이스의 효율성과 안정성을 높일 수 있습니다.
반응형