SQL과 MySQL의 차이점

Habdul Hazeez 2022년5월26일
SQL과 MySQL의 차이점

이 기사에서는 SQL과 MySQL의 5가지 차이점에 대해 설명합니다.

SQL과 MySQL의 차이점

이 기사는 코드와 설명을 모두 포함하므로 SQL과 MySQL의 차이점을 이해하고 이해하기에 충분합니다.

SQL은 언어이고 MySQL은 데이터베이스 소프트웨어입니다.

SQL은 Structured Query Language의 약자로 이를 지원하는 데이터베이스와 함께 사용할 수 있는 언어입니다. MySQL은 이름에 SQL이라는 단어가 있지만 데이터베이스 소프트웨어입니다.

데이터를 데이터베이스에 저장하려는 경우 MySQL이 적합한 옵션입니다.

SQL은 데이터베이스를 쿼리할 수 있는 반면 MySQL은 SQL 쿼리에 응답합니다.

SQL은 MySQL과 같은 데이터베이스에서 사용할 수 있는 쿼리 언어입니다. 따라서 MySQL에 데이터베이스가 있는 경우 SQL을 사용하여 이러한 데이터를 쿼리할 수 있습니다.

이를 더 명확하게 하기 위해 예를 살펴보겠습니다. 다음은 MySQL에 데이터베이스를 생성하는 SQL 코드이다.

CREATE database DelftStack;

출력:

Query OK, 1 row affected (0.001 sec)

쿼리가 성공적으로 실행되면 SQL을 사용하여 데이터베이스에 테이블과 데이터를 생성할 수도 있습니다. 따라서 다음 SQL은 DelftStack 데이터베이스에 테이블을 생성합니다.

테이블이 있으면 일부 데이터를 입력할 수 있습니다.

CREATE TABLE articles
(article_id INT NOT NULL AUTO_INCREMENT,
article_author VARCHAR(30) NOT NULL,
article_date DATE NOT NULL,
article_title VARCHAR(200) NOT NULL,
article_content LONGTEXT NOT NULL,
PRIMARY KEY (article_id))
ENGINE = InnoDB;

출력:

Query OK, 0 rows affected (0.060 sec)

테이블이 설정되면 샘플 데이터로 채울 수 있습니다. 따라서 다음 SQL에서 articles 테이블에 단일 레코드를 삽입했습니다.

INSERT INTO articles
(article_id, article_author, article_date, article_title, article_content)
VALUES (NULL, 'Delft Stack', '2022-05-19', 'Decoding charCodeAt() in JavaScript', 'This is a really long post about decoding the charCodeAt() function in JavaScript');

출력:

Query OK, 1 row affected (0.013 sec)

데이터베이스가 일부 데이터로 채워지면 SQL을 사용하여 데이터를 쿼리할 수 있습니다. 다음에서는 SQL을 사용하여 데이터베이스 테이블의 모든 데이터를 반환합니다.

SELECT * FROM articles;

출력:

+------------+----------------+--------------+-------------------------------------+-----------------------------------------------------------------------------------+
| article_id | article_author | article_date | article_title                       | article_content                                                                   |
+------------+----------------+--------------+-------------------------------------+-----------------------------------------------------------------------------------+
|          1 | Delf Stack     | 2022-05-19   | Decoding charCodeAt() in JavaScript | This is a really long post about decoding the charCodeAt() function in JavaScript |
+------------+----------------+--------------+-------------------------------------+-----------------------------------------------------------------------------------+
1 row in set (0.093 sec)

MySQL이 업데이트를 받는 동안 SQL은 거의 동일하게 유지됩니다.

SQL은 표준을 따르므로 언어는 수년간 동일하게 유지됩니다. 그러나 MySQL은 업데이트되는 소프트웨어입니다.

이러한 업데이트는 버그, 새로운 기능 또는 새 버전에 대한 완전한 재작성을 수정하기 위한 것일 수 있습니다. 예를 들어 다음 SQL은 SQL을 지원하는 대부분의 데이터베이스에서 작동합니다.

한편, 이 SQL 문은 데이터베이스에 fruit 테이블이 있다고 가정합니다.

SELECT * FROM fruit;

MySQL의 출력:

+----+-----------+--------+
| id | name      | color  |
+----+-----------+--------+
|  1 | Banana    | Yellow |
|  2 | Pineapple | Green  |
+----+-----------+--------+
2 rows in set (0.037 sec)

이전 SQL 코드는 SQL을 지원하는 다른 데이터베이스에서 작동합니다. 오랫동안 SQL의 일부였던 SELECT 문이기 때문입니다.

한편, 작성 당시 MySQL의 현재 버전은 버전 8입니다. 게다가 여기서 멈추지 않을 것입니다. 이 기사를 읽을 때는 버전 19일 수 있습니다.

SQL은 MySQL과 독립적이고 MySQL은 SQL에 종속적입니다.

SQL은 Oracle Database, PostgreSQL 및 Microsoft SQL Server와 같은 데이터베이스와 함께 작동할 수 있습니다. 이것은 SQL이 특정 데이터베이스에 잠겨 있지 않음을 의미합니다.

따라서 SQL을 지원하도록 데이터베이스를 개발할 수 있습니다. 그러나 MySQL은 데이터베이스이며 작업할 수 있는 유일한 언어는 SQL입니다.

MySQL을 효과적으로 사용하려면 SQL을 배워야 합니다

SQL에 대한 깊은 지식이 있으면 MySQL을 최대한 활용할 수 있습니다. 그러나 phpMyAdmin과 같은 도구를 사용하면 SQL 코드를 작성하지 않고도 MySQL을 사용할 수 있습니다.

그래도 SQL을 잘 이해하면 MySQL을 최대한 활용할 수 있습니다. 따라서 SQL을 배우려면 다음을 권장합니다.

  1. Rudy Limeback의 Simply SQL
  2. Lynn Beighley의 Head First SQL
  3. Alan Beaulieu의 SQL 학습
Habdul Hazeez avatar Habdul Hazeez avatar

Habdul Hazeez is a technical writer with amazing research skills. He can connect the dots, and make sense of data that are scattered across different media.

LinkedIn