* 추후 업데이트 예정
쿼리의 사용이유? 똑같은 처리의 무한 반복 가능(생산성이 높아짐), 스크립트를 통해 테이블의 구조를 한 눈에 볼 수 있으며 어떤 절차를 통해 무엇을 하는지 알 수 있음.
// study 라는 이름의 데이터베이스 생성
CREATE DATABASE study;
//데이터베이스 화면에 출력 명령어
SHOW DATABASES;
// 데이터베이스 삭제
DROP DATABASE sample;
새로 만든 DB 사용 시 USE 명령어를 사용 (모든 DB 개체는 활성 DB에 생성됨)
MariaDB [study]> CREATE TABLE tCity
-> (
-> name CHAR(10) PRIMARY KEY,
-> area INT NULL,
-> popu INT NULL,
-> metro CHAR(1) NOT NULL,
-> region CHAR(6) NOT NULL
-> );
SELECT 필드목록 FROM 테이블 [WHERE 조건] [ORDER BY 정렬기준]
// 데이터 삽입
INSERT INTO tCity VALUES('서울',605,974,'Y','경기');
INSERT INTO tCity VALUES('부산',765,342,'Y','경상');
INSERT INTO tCity VALUES('오산',42,21,'N','경기');
INSERT INTO tCity VALUES('청주',940,83,'N','충청');
INSERT INTO tCity VALUES('전주',205,65,'N','전라');
SELECT*FROM tCity; // 데이터 삽입 확인
+--------+------+------+-------+--------+
| name | area | popu | metro | region |
+--------+------+------+-------+--------+
| 부산 | 765 | 342 | y | 경상 |
| 서울 | 605 | 974 | y | 경기 |
| 오산 | 42 | 21 | n | 경기 |
| 전주 | 205 | 65 | N | 전라 |
| 청주 | 940 | 83 | N | 충청 |
+--------+------+------+-------+--------+
COMMIT // 변경 사항을 실제 테이블에 반영
필드명 [AS] "별명"
SELECT*FROM tCity WHERE area>1000;
SELECT*FROM tCity WHERE popu >=100 AND area >=700;
SELECT*FROM tCity WHERE region != '경기';
비교 연산자는 조건식이 완전히 일치해야 하는 반면, LIKE 연산자는 패턴으로 문자열 검색 => 와일드 카드 사용
문자 | 설명 |
---|---|
% | 여러 개의 문자와 대응. 임의 개수의 임의 문자가 올 수 있음 |
_ | 하나의 문자와 대응 |
[] | []안에 포함된 문자 리스트 중 하나의 문자와 대응 |
[^ ] | [^ ]안에 포함된 문자 리스트에 포함되지 않은 하나의 문자와 대응 |
SELECT*FROM tCity WHERE name LIKE '%천%';
SELECT*FROM tCity WHERE name NOT LIKE '%천%';
와일드 카드 문자 그 자체를 검색하려 한다면 ESCAPE 문으로 특수 문자를 지정하고, 그 다음에 와일드 카드 문자를 사용
WHERE sale LIKE '%30#%' ESCAPE '#'
서버와 클라이언트의 중간 접속을 위한 별도의 레이어
DB 인터페이스 | 설명 |
---|---|
ODBC | 마이크로소프트에서 처음 만든 범용 db 인터페이스 C 수준 함수 호출로 동작하여 속도가 빠르고 지원 범위가 넓음 |
OLE DB | 클래스 수준의 고수준 라이브러리. 비관계형 DB도 접속 가능 |
ADO | OLE DB를 웹에서 사용할 수 있도록 더 쉽게 만듬. 주로 닷넷에서 사용 |
JDBC | 자바의 db 접속 인터페이스. 언어에 맞는 JDBC 드라이버 설치 시 임의의 DBMS에 접근 가능 |