항해99 6th WIL [SQL]

Colleen·2023년 2월 19일
1
post-thumbnail

Sql에 대해서 다뤄 볼려고 한다. 나는 학교에서 my sql과 sqlite를 다뤄 봐서 그 기억을 떠올리면서 한번 적어본다.
찾아보니 Sql의 종류가 3가지로 나뉜다고 한다.

SQL의 분류

  • DML(Data Manipulation Language) : 데이터 조작
  • DDL(Data Definition Language) : 데이터베이스의 스키마 정의 또는 조작
  • DCL(Data Control Language) : 데이터 제어, 권한 관리, 데이터 보안, 무결성등 을 정의

SQL

생성, 삭제, 수정, 조회등을 자주 하게 된다. 조회도 다양한 방법을 사용하게 된다.

  • table : RDBM기본적인 저장구조, 한 개이상의 column과 0개 이상의 row로 구성된다.
  • column : table상에서의 단일 종류를 나타낸다. 특정 데이터 타입 및 크기를 가지고 있다.
  • row : column들의 조합이다. 때로는 레코드라고 불린다. 기본키에 의해서 구분 되며, 기본 키는 중복 값을 허용하지 않는다.
  • field : row와 column의 교차점. 데이터를 포함 할 수 있고, 포함 할 수 없을 때는 null값을 가진다.

DB에 관련 되어, 학교 교수님이 정리 해주신 페이지가 있다. (사실, 저작권이 있는 것 같아서 링크를 올리지는 못하겠다. 상관 없나?? 잘 모르겠다.)

DB 쿼리 문을 스프링을 사용하면서 만질 일은 없다. 그럼 sql을 어떤 식으로 만질지 나는 궁금했다.
그런 내용을 기준으로 찾아 보니, 가장 많이 나오는 내용이 JDBC라는 것을 사용해서 sql연동을 하는 내용이 가장 많이 들어 갔다.

JDBC, 그게 뭔데?

Java DataBase Connectivity의 약자 이며 자바에서 db 프로그래밍을 하기 위해서 사용되는 API라고 생각 하면 된다. (자바언어를 이용한 db접속과 쿼리문 실행, 그리고 실행 결과로 얻어진 데이터의 핸들링을 제공하는 방법과 절태에 대한 규약이알고 한다. 결론, 자바에서 db사용 할 때 쓴다는 말인거 같다..)

그럼 스프링에서 JDBC를 사용하게 되면 뭐가 다른걸까?
스프링에서는 JDBC Template를 사용한다. 스프링 dependencies에 추가를 하게 되면 아래의 종류에 해당되는 db가 연결 되고 사용이 가능 하게 된다고 한다. (사실, 아직 사용해보지 않아서 모르겠다. )

  • DB2
  • H2
  • HSQLDB
  • MariaDB
  • Microsoft SQL Server
  • MySQL
  • Oracle
  • Postgres (해당 되지 않는 db를 사용한다면, 따로 설정을 해서 사용이 가능하게 만들면 된다고 한다. )
    Spring config에서 설정을 한다고 한다. (코드를 봤으나, 이해가 안되니 ... 나중에 이해가 되서 내가 쓸 수 있게 되면 추가 하고자 한다. )

아직은 나 스스로 이해가 안되는 지점이 많아서 ... 일단은 도움이 된 사이트 링크만 남기고 글을 마무리 하고자 한다. 공부를 해야 할 범위가 하면 할 수록 점점 늘어 나고 있다는 생각이 많이 든다... 뭐하나 쉽지 않지만 일단은 꾸준히 공부 해 나아가는 사람이 되면 좋겠다.

profile
이상한 나라의 개발하는 예대생

0개의 댓글