[ANSI SQL] 1. SQL의 이해

2020. 1. 2. 11:44 Database/ANSI SQL

[1] SQL의 이해

SQL(S-Q-L로 각 문자를 따로 발음하거나 붙여서 sequel - 즉 시퀄 이라고 발음함)

Structured Query Language(구조적 쿼리 언어) 의 약자이다. SQL 은  데이터베이스와의 통신을 위해 특별히 고안된 언어이다.

 

SQL의 목적 - DATABASE의 제어

- 데이터베이스에서 데이터를 읽고 데이터베이스를 쓰기 위한 용도로 만들어진 언어

SQL 확장

-표준 SQL은 ANSI 표준 위원회에서 관리하고 있기 때문에 ANSI SQL 이라  부른다. 모든 주요 DBMS는 각자 확장 기능이 있지만 이 ANSI SQL을 충실하게 지원하며, PL-SQL, Transact-SQL 등과 같이 자신들의 SQL에 이름을 붙여 표현한다.

- 많은 DBMS 회사에서 SQL 을 지원하지만 자신들만의 고유한 문을 추가하는 경우가 많다. 이러한 확장은 추가 기능을 지원하거나 특정한 작업을 보다 간단하게 수행하기 위한것이며, 실제로 일부 추가 기능은 매우 유용하다. 각 확장 내용은 DBMS에 따라 다르고, 동일한 기능이 여러 회사의 DBMS에서 지원되는 경우는 드물다. 

 

 

DATABASE : 구조적인 방식으로 저장된 데이터의 모음 (또는 컨테이너/ 대개 파일이나 파일 모음)

*  오해: 데이터베이스가 DBMS, 즉 데이터베이스 소프트웨어를 의미하는것으로 오인하는 경우가 있는데 잘못된 생각이며 혼란의 근원이다.

데이터베이스 소프트웨어는 DBMS,즉 데이터베이스 관리 시스템이며 데이터베이스는 DBMS를 사용해서 만들어지고 제어되는 컨테이 의미한다. 데이터베이스는 하드 드라이브에 저장된 파일일 수도 있으나 이는 별 의미가 없다. 대부분의 경우 데이터베이스 파일에 우리가 직접 액세스할 이유는 없고, DBMS를 거쳐서 사용하기 때문이다.

 

표(table) : 특정한 방식으로 data를 저장할 수 있는 구조적 목록으로 묶은것

          ex) 고객목록, 제목 ,카탈로그와 같은 특정한 주제에 관련된 정보를 담는 그릇

데이터베이스의 각 table에는 이름이 있다. 이 이름은 언제나 고유해야 하며 데이터베이스의 다른 table과 같은 이름을 사용해서는안된다.

*  참고: table 이름

- table 이름을 고유하게 만드는 것에는 데이터베이스 이름과 table 이름을 포함하여 여러 요소가 있다. 

- 다른  database 에서의  같은 table 이름 지정 가능 

- 여러 DBMS 마다 틀리겠지만 검색 시 유일성을 가지기 위해 서로 다른 이름을 가져야 한다.



출처: https://inforyou.tistory.com/21?category=710791 [a battle with myself]