DB (40) 썸네일형 리스트형 SQL :: TRUNCATE 테이블의 모든 행(row) 데이터와 행 자체, 저장공간 삭제 TRUNCATE 오라클(Oracle)에서 테이블의 모든 데이터를 삭제하는 DDL(Data Definition Language) 명령어성능이 빠르지만 복구가 불가능하므로 신중하게 사용해야 함 DELETE와 다르게 WHERE 절 사용이 불가능하며, 자동 증가 값도 초기화됨 TRUNCATE 기본 문법 테이블의 모든 데이터가 즉시 삭제되며, 롤백(UNDO)이 불가능TRUNCATE TABLE 테이블명; TRUNCATE 주의할 점 1. TRUNCATE는 WHERE 절을 사용할 수 없음 DELETE는 특정 행만 삭제할 수 있지만, TRUNCATE는 테이블 전체를 삭제 2. TRUNCATE 실행 후 ROLLBACK이 불가능 DELETE는 트랜잭션을 통해 복구 가능하지만, TRUNCATE는 불가능 3. 외래 키(For.. SQL :: INDEX 인덱스 INDEX인덱스는 데이터베이스에서 쿼리 성능을 향상시키기 위해 사용하는 중요한 도구이다. 테이블의 특정 컬럼에 인덱스를 만들면, 해당 컬럼을 사용하는 검색, 정렬 등의 쿼리를 더 빠르게 처리할 수 있다. 인덱스 사용법1. 기본 역할 인덱스는 데이터베이스에서 테이블의 특정 컬럼을 효율적으로 검색하기 위해 사용하는 구조이다. 인덱스를 생성하지 않고 테이블에서 데이터를 검색할 때는 전체 테이블 스캔(full table scan)을 수행해야 하지만, 인덱스를 사용하면 특정 컬럼에서 빠르게 원하는 데이터를 찾을 수 있다.2. 인덱스 적용 쿼리 인덱스를 생성한 후에는 이를 직접적으로 사용하는 특별한 문법이 없다. 인덱스는 자동으로 쿼리 최적화 과정에서 사용된다. 인덱스 사용 예시1. SELECT 문에서 WHER.. MariaDB :: 기초 쿼리 문법 ORDER BY기본값 오름차순으로 정렬DESC를 칼럼명 뒤에다 붙이면 내림차순정렬할 기준이 여러 개면 우선순위대로 칼럼명 나열SELECT [칼럼명] FROM [테이블명] ORDER BY [칼럼명1], [칼럼명2]# name 오름차순, 같으면 animal_id 내림차순으로 정렬SELECT name, datetime FROM animal_ins ORDER BY name DESC, animal_id LIMIT특정 개수의 행 조회첫번째 행은 0# 숫자만큼의 행 조회SELECT [칼럼명] FROM [테이블명] LIMIT [숫자]# (a+1)번째 행부터 b개의 행 조회SELECT [칼럼명] FROM [테이블명] LIMIT [숫자a], [숫자b]# 동물 보호소에 가장 먼저 들어온 3 동물의 이름SELECT name .. MariaDB :: 데이터베이스 기본 사용법 MariaDB는 데이터베이스를 사용하기 위해서는 스키마(데이터를 저장할 공간)을 생성해야 한다. 1. 데이터베이스 생성 및 삭제-- 데이터베이스 생성CREATE DATABASE mydatabase;-- 데이터베이스 삭제DROP DATABASE mydatabase;-- 데이터베이스 사용USE mydatabase; 2. 테이블 생성 및 삭제-- 테이블 생성CREATE TABLE mytable ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50), age INT);-- 테이블 삭제DROP TABLE mytable; 3. 데이터 삽입 (INSERT)-- 데이터 삽입INSERT INTO mytable (name, age) VALUES ('Alice'.. MariaDB :: 계정 관리 및 접속 ROOT 사용자 접속 MariadDB를 관리와 사용자를 만들고 제거하기 위해 root로 접근mysql -u root -p 계정 생성 SQL-- 'run'이라는 아이디와 'password123'이라는 비밀번호로 사용자 생성CREATE USER 'run'@'%' IDENTIFIED BY 'password123';-- 모든 데이터베이스에 대해 권한 부여GRANT ALL PRIVILEGES ON *.* TO 'run'@'%' WITH GRANT OPTION;-- 권한 적용FLUSH PRIVILEGES; 'run'@'%': 'run' 사용자 이름, '%' 호스트 와일드카드 이는 사용자가 어느 IP 주소나 호스트에서든지 MariaDB 서버에 접속할 수 있음을 의미 1) 사용자 생성과 권한 부여 sql > gra.. Oracle :: DB 백업(덤프,exp/imp)파일 생성 방법 덤프파일 생성 방법 (export)사용자ID나 암호 입력을 잘못하는 경우 아래와 같은 에러가 발생함으로 주의ORA-01017: invalid username/password; logon denied1. 명령 프롬프트(cmd) 실행 2. 전체 데이터 추출 exp 사용자ID/암호 file='백업파일 저장할 경로\저장할 백업파일명.dmp' exp EDU/EDU file='c:\DB.DUMP\EDU.DMP' 2-1. 부분 데이터 추출 (특정 테이블) exp 사용자ID/암호 tables=테이블명 file='백업파일 저장할 경로\저장할 백업파일명.dmp'exp SYSTEM/1234 tables=TABLE1 file=' c:\DB.DUMP\EDU.DMP' 생성한 덤프파일을 DB에 적용하는 방법 (import) 덤프파.. SQL :: COLUMN 사용법 COLUMN 추가오라클 테이블에 컬럼을 추가하기 위해서는 ALTER TABLE을 사용한다. 컬럼을 추가하면 테이블 컬럼의 마지막 순서에 추가가 되며, 컬럼 순서의 중간에 컬럼을 추가할 수는 없다. --컬럼 추가ALTER TABLE emp ADD email VARCHAR(25); COLUMN 삭제--컬럼 삭제ALTER TABLE emp DROP COLUMN email; COLUMN 데이터 길이 변경컬럼 길이를 변경할 경우 변경할 컬럼 길이보다 길이가 긴 값이 있으면 안 된다.--데이터 길이(크기) 변경 : VARCHAR2(4) -> VARCHAR2(5)ALTER TABLE emp MODIFY editid VARCHAR2(5);ALTER TABLE [테이블명] MODIFY [컬럼명] [데이터타입(새로운.. [프로그래머스-SQL] 조건에 부합하는 중고거래 댓글 조회하기 문제 풀이SELECT b.TITLE, b.BOARD_ID, r.REPLY_ID, r.WRITER_ID, r.CONTENTS, TO_CHAR(r.CREATED_DATE, 'YYYY-MM-DD') AS CREATED_DATE FROM USED_GOODS_BOARD b JOIN USED_GOODS_REPLY r ON b.BOARD_ID = r.BOARD_ID WHERE TO_CHAR(b.CREATED_DATE, 'YYYY-MM') = '2022-10' ORDER BY 6 ASC, 1 ASC; 주의사항 - 조건이 걸려있는 테이블이 정확히 어느 테이블인지 잘 확인해야 한다. 2022-10에 작성된 '게시글'에서 댓글을 조회하는 쿼리이다. 이전 1 2 3 4 5 다음