일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Spring
- C언어
- 1차원배열
- for
- 반복문
- 유비쿼터스
- 자료구조
- java프로그래밍
- 백준
- Scanner
- FOR문
- IF문
- IF
- 파이썬프로그래밍기초
- 스캐너
- 알고리즘
- 스캐너클래스
- error
- Scanner class
- 변수
- 배열
- IFELSE
- 자바
- java
- 백준알고리즘
- 하드웨어
- 데이터
- 함수
- 기본
- MySQL
- Today
- Total
목록Database - 데이터베이스 ( DB ) (14)
정리하고기록하자
Data too long for column '' at row 1 에러 원인 : 컬럼에 값을 넣으려고 하는데 지정해 놓은 값보다 더 큰 값을 넣어서 에러가 발생한다. 에러 해결 : DB에서 필요한 길이 만큼 늘렸다.
SELECT A FROM TABLE FOR UPDATE SELECT ~~ FOR UPDATE 는 " 데이터를 수정하려고 SELECT 중이다~ 다른 사람들은 데이터에 손 대지 마라 " 라고 할 수 있다. 동시성 제어를 위해서 특정 데이터에 대해 LOCK을 거는 기능이다. SELECT ~~ FOR UPDATE 는 은행의 예금 및 통장의 잔액 변경의 일관성을 유지하려고 할 때, 영화 및 공연장의 특정 좌성을 예약 하려고 할 때 여러 상황에도 사용이 되긴 하지만 예시로 기본 적으로 위에 두가지 경우에 주로 사용한다. movie_num seat name 1 12 영화A 2 9 영화B 사용자 A // 사용자 B 가 동시에 '영화B'에 접글 하려고 한다. 사용자A 와 사용자B 가 동시에 데이터에 접근 하려고 할때 사..
invalid comparison: java.util.ArrayList and java.lang.String 에러 원인 : list의 경우는 != '' 와 비교 할 수 없다. #{item.value} 에러 해결 : 해 list를 size() 로 변경 해서 사용한다. #{item.value}
MySQL 에서 두 날짜간의 차이를 가져올때 사용하는 함수. - DATEDIFF - TIMESTAMPDIFF DATEDIFF - 단순히 일 차이를 가져올때 사용 하는 함수. ( 날짜1 - 날짜2 ) DATEDIFF(날짜1, 날짜2); SELECT DATEDIFF('2022-09-20', '2022-09-18' ); TIMESTAMPDIFF - 연, 분기, 월, 주, 일, 시, 분, 초를 지정하여 차이 값을 가져올 때 사용 하는 함수. ( 날짜1에서 날짜2까지의 차이 ) TIMESTAMPDIFF(단위, 날짜1, 날짜2); * 단위 SECOND : 초 MINUTE : 분 HOUR : 시 DAY : 일 WEEK : 주 MONTH : 월 QUARTER : 분기 YEAR : 연 SECOND SELECT TIMES..
DB Clustering DB Clustering 이란 DB를 여러개의 서버가 나눠서 처리하도록 하는 것이다. ex ) 데이터베이스 서버가 죽으면 어떻게 대응할까? 데이터베이스 서버를 여러개로 만들자 ( 클러스터링 ) 서버 한 대가 죽어도 대비가 가능하다. 여러 데이터베이스 서버로 부하를 분산시켜 사용자의 요청을 더 많이 수용할 수 있다. ( 로드 밸런싱 ) 여러 대의 데이터베이스 서버를 가지므로 높은 가용성을 보장한다. ( 높은 가용성 ) DB의 가용성이란 DB가 동작하고 있는 시간과 정지한 시간의 비율이다. DB 시스템을 구성할 서버나 스토레지 장비를 각각 2대 이상으로 구성해서, 만의 하나 어느쪽인가에 장애가 발생했다고 하더라도 단 시간내에 운용을 재개 할 수 있도록 한다. DB Clustering..
SQL SQL 이란 Structrued Query Language 이고, 데이터베이스에서 데이터를 저장하거나 얻기 위해서 사용하는 표준화된 언어이다. Mysql 공식 매뉴얼 Mysql 공식 매뉴얼 Mysql 한글 매뉴얼 SQL 언어의 특성 SQL은 대소문자를 가리지 않는다. SQL 명령은 반드시 세미콜론(;)으로 끝나야 한다. 고유의 값은 따옴표('')로 감싸준다. SQL에서 객체를 나타낼 때는 백틱(``) 으로 감싸준다. 주석은 일종의 도움말로, 주석 처리된 문장은 프로그램에서 동작하지 않는다. ( 한 줄 주석은 문장 앞에 -- 를 붙여서 사용한다. 여러줄 주석은 /* */ 으로 감싸준다 SQL 문법 DML ( Data Manipulation Language, 데이터 정의 언어 ) select /* 모..
MYSQL 양력 달력 음력 달력으로 변경 할때 함수 CREATE DEFINER=`db이름`@`%` FUNCTION `함수이름`( `AS_DATE` VARCHAR(50) ) RETURNS double LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER COMMENT '생일음력->양력변환 ' BEGIN DECLARE ll_convert_date VARCHAR(100) DEFAULT ''; DECLARE LunerY INT DEFAULT 0 ; DECLARE LunerM INT DEFAULT 0 ; DECLARE LunerD INT DEFAULT 0 ; DECLARE i INT(5); DECLARE j INT(5); DECLARE p INT(5)..
Unknown column '' in 'where clause' 에러 원인 : 있지도 않은 컬럼을 where 조건 절에 사용 했다. 에러 해결 : 해당 테이블에 컬럼을 없는지 확인했고, 컬럼을 추가 하였다
Subquery returns more than 1 row 에러 원인 : 쿼리 구문에는 오류가 없지만, 서브쿼리에서 1개 이상의 값이 반환되는 것이다. 에러 해결 : 서브쿼리에 limit 1 을 반환하여 서브쿼리를 강제로 1개로 만들어 버리거나, 조건을 좀 더 구체적으로 주어서 1개의 row만 반환이 되도록 해야 한다.