logo

DDL과 DML의 차이점

데이터베이스는 관련 레코드의 목록이며 데이터베이스 관리 시스템은 이러한 데이터베이스(DBMS)를 관리하는 가장 일반적인 방법입니다. 그만큼 SQL(구조적 쿼리 언어) 데이터베이스 시스템과 상호 작용하려면 명령이 필요합니다. 이러한 SQL 명령을 사용하여 테이블을 작성하고, 테이블에 데이터를 삽입하고, 테이블을 제거 또는 삭제하고, 테이블을 변경하고, 사용자에 대한 권한을 설정할 수 있습니다. SQL 명령을 DDL, DQL, DCL 및 DML로 분류할 수 있습니다.

이 문서에서는 DDL 및 DML 언어의 전체 개요를 설명합니다. DDL과 DML 명령의 차이점은 인터뷰 질문에서 가장 일반적인 부분입니다. 주요 차이점은 DDL 명령은 데이터베이스 스키마를 생성하는 데 사용되는 반면 DML 명령은 테이블의 기존 데이터를 수정하는 데 사용된다는 것입니다. . 비교하기 전에 먼저 알아두셔야 할 점은 SQL 명령 .

DDL 대 DML

DDL 명령이란 무엇입니까?

DDL은 데이터 정의 언어를 의미합니다. 이름에서 알 수 있듯이 DDL 명령은 데이터베이스나 스키마의 구조를 정의하는 데 도움이 됩니다. DDL 문을 실행하면 즉시 적용됩니다. 이 명령을 사용하여 데이터베이스에서 변경한 내용은 해당 명령이 자동 커밋되기 때문에 영구적으로 저장됩니다. 다음 명령은 DDL 언어에 포함됩니다.

    만들다: 새로운 데이터베이스와 테이블, 뷰, 함수, 저장 프로시저, 트리거 등과 같은 해당 개체를 생성하는 데 사용됩니다.떨어지다: 데이터베이스와 구조를 포함한 해당 개체를 서버에서 영구적으로 삭제하는 데 사용됩니다.바꾸다: 기존 속성의 특성을 수정하거나 새 속성을 추가하여 데이터베이스 구조를 업데이트하는 데 사용됩니다.자르기: 테이블의 구조와 서버에 할당된 공간을 포함하여 모든 데이터를 테이블에서 완전히 제거하는 데 사용됩니다.이름 바꾸기: 이 명령은 데이터베이스의 콘텐츠 이름을 바꿉니다.

DDL 명령을 사용하는 이유는 무엇입니까?

DDL 명령을 사용하는 이유는 다음과 같습니다.

  • 이를 통해 공유 데이터를 데이터베이스에 저장할 수 있습니다.
  • 데이터 독립성 기능으로 인해 무결성이 향상되었습니다.
  • 이를 통해 여러 사용자가 동일한 데이터베이스에서 작업할 수 있습니다.
  • 보안 효율적인 데이터 액세스가 향상되었습니다.

DML 명령이란 무엇입니까?

데이터 조작 언어(Data Manipulation Language)의 약자입니다. DML 명령은 데이터베이스의 기존 레코드 조작을 처리합니다. 데이터베이스에서 발생하는 모든 변경 사항을 담당합니다. 이 명령을 사용하여 데이터베이스에서 변경한 내용은 해당 명령이 자동 커밋되지 않기 때문에 영구적으로 저장할 수 없습니다. 따라서 변경 사항이 롤백될 수 있습니다. 다음 명령은 DML 언어에 포함됩니다.

    선택하다: 이 명령은 테이블에서 정보를 추출하는 데 사용됩니다.끼워 넣다: 테이블의 행에 데이터를 추가할 수 있는 SQL 쿼리입니다.업데이트: 테이블의 내용을 변경하거나 수정하는 명령입니다.삭제: 이 명령은 데이터베이스 테이블에서 레코드를 개별적으로 또는 그룹으로 삭제하는 데 사용됩니다.

DML 명령을 사용하는 이유는 무엇입니까?

DML 명령을 사용하는 이유는 다음과 같습니다.

  • 이는 사용자가 데이터베이스 테이블의 데이터를 변경하는 데 도움이 됩니다.
  • 이는 사용자가 필요한 데이터를 지정하는 데 도움이 됩니다.
  • 이는 시스템과 인간의 상호 작용을 촉진합니다.

DDL과 DML 명령의 주요 차이점

다음 사항에서는 DDL 명령과 DML 명령 간의 주요 차이점을 설명합니다.

  • DDL(데이터 정의 언어) 문은 데이터베이스 또는 스키마의 구조를 설명합니다. 반면, DML(데이터 조작 언어) 문을 사용하면 데이터베이스에 이미 존재하는 데이터를 변경할 수 있습니다.
  • 데이터베이스나 스키마를 생성하는 데는 DDL 명령을 사용하고, 데이터베이스를 채우고 조작하는 데는 DML 명령을 사용합니다.
  • DDL 명령은 전체 데이터베이스나 테이블에 영향을 줄 수 있는 반면, DML 문은 쿼리에 지정된 조건에 따라 단일 또는 여러 행에만 영향을 미칩니다.
  • DDL 명령은 자동 커밋되므로 수정 사항은 영구적이며 되돌릴 수 없습니다. 반면에 DML 문은 자동 커밋되지 않습니다. 즉, 수정 사항이 영구적이지 않고 되돌릴 수 있습니다.
  • DML은 명령적이고 절차적인 방법인 반면, DDL은 선언적인 방법입니다.
  • DML 문의 데이터는 WHERE 절로 필터링할 수 있지만 DDL 문의 레코드는 WHERE 절로 필터링할 수 없습니다.

DDL과 DML 비교 차트

다음 비교 차트에서는 주요 차이점을 빠르게 설명합니다.

비교 기준 DDL DML
기초적인 이는 데이터베이스의 구조나 스키마를 정의하는 데 도움이 되며 데이터가 데이터베이스에 저장되는 방식을 처리합니다. 이를 통해 데이터베이스에 저장된 데이터를 조작(예: 검색, 업데이트 및 삭제)할 수 있습니다.
전체 형식 DDL의 전체 형태는 데이터 정의 언어입니다. DML의 전체 형태는 데이터 조작 언어입니다.
분류 DDL 명령에는 더 이상 분류가 없습니다. DML 명령은 절차적 DML과 비절차적(선언적) DML로 분류됩니다.
명령 용도 DDL 언어에서 일반적으로 사용되는 명령은 다음과 같습니다.
  • 만들다
  • 떨어지다
  • 바꾸다
  • 자르기
  • 이름 바꾸기
DML 언어에서 일반적으로 사용되는 명령은 다음과 같습니다.
  • 끼워 넣다
  • 업데이트
  • 삭제
  • 선택하다
자동 커밋 DDL 명령은 자동 커밋되므로 데이터베이스에서 발생하는 변경 사항은 영구적입니다. DML 명령은 자동 커밋되지 않으므로 데이터베이스 변경 사항이 영구적이지 않습니다.
롤백 DDL 명령으로 변경 사항이 영구적으로 적용되었습니다. 따라서 이러한 문을 롤백할 수 없습니다. DML 명령은 변경 사항을 영구적으로 적용하지 않습니다. 따라서 이러한 명령문에 대해 롤백이 가능합니다.
WHERE 절 DDL 명령은 WHERE 절을 사용하지 않습니다. 여기서는 레코드 필터링이 불가능하기 때문입니다. DML 문은 데이터베이스의 데이터를 조작하는 동안 WHERE 절을 사용할 수 있습니다.
효과 DDL 명령은 전체 데이터베이스 또는 테이블에 영향을 미칩니다. DML 명령은 지정된 조건에 따라 단일 또는 다중 레코드에 영향을 미칩니다.

결론

이 기사에서는 DDL 명령과 DML 명령을 비교했습니다. 여기서 우리는 데이터베이스를 형성하기 위해서는 데이터베이스를 형성하고 접근하기 위해 두 언어가 모두 필요하다는 결론을 내렸습니다. 대규모 데이터베이스를 다룰 때에는 데이터베이스나 테이블 전체가 삭제될 수 있으므로 조건을 제대로 언급했는지 확인하세요.