되게 간단한건데 오늘 새롭게 알게되서 정리한다.난 여태 한 테이블에 기본키가 2개 이상의 컬럼으로 이루어져있으면그게 각각의 키로 인식해서 두 컬럼 모두 개별적으로 중복이 되면 안되는줄알았다.그래서 두테이블간에 관계를 맺을때 식별자와 비식별자관계가 무슨 차이인지 잘 몰랐는데2개 이상의 컬럼을 개별적으로 보는게 아니라 모두 합쳤을때 중복이 되면 안되는거였다. 즉, A컬럼과 B컬럼이 기본키로 잡혀있다고 가정할때 내가 여태 잘못알고있던 방식은 A는 A끼리 중복이 되면 안되고 B는 B끼리 중복이 되면 안되는줄알았는데 그게 아니고 [A = 1 B = 1], [A = 1, B = 2] 와 같이 두 컬럼 모두 중복이 아니라면 이 데이터는 무결성 원칙을 지키는 것이다. A컬럼과 B컬럼이 같이 기본키일때 B컬럼만 기본키일..
한글 제거하는 정규식/^[A-Za-z][A-Za-z0-9]*$/
위의 그림을 보자. 회원 테이블과 이름 컬럼으로 만든 인덱스, 주소 컬럼으로 만든 인덱스, 연락처 컬럼으로 만든 인덱스가 있다. select * from 회원 where 이름 = '나한일'; 위 쿼리를 날리면 먼저 where절에 있는 이름 컬럼으로 인덱스가 만들어져있는지 찾아본다. 보니까 idx_이름 이라는 인덱스가 있다. 그 인덱스에 나한일이 어디 사냐고 물어본다. 인덱스에서 나한일의 ROWID를 보니 B3이다. B3 주소값을 가지고 HDD에서 B3으로 가 나한일을 메모리로 끌어올린다.(Single Block I/O) where 주소 in ('서울', '부산');위 쿼리는 주소 인덱스에서 서울과 부산의 주소값을 가지고 하드로 가므로 블록I/O가 두번 일어난다. where 급여 = 80;위 쿼리는 급여 ..
문자함수-INITCAP : 첫 글자를 대문자로 변환-LOWER : 문자열 전체를 소문자로 변환-UPPER : 문자열 전체를 대문자로 변환-LENGTH : 문자열의 길이 반환-LENGTHB : 문자의 바이트 수를 반환-CONCAT : 문자열 결합. ||와 같음-SUBSTR : 문자열 일부를 추출 SUBSTR(문자열, n1, n2); //해당 문자열의 n1번째부터 n2개 까지 추출하겠다.(n2를 입력하지않으면 n1부터 이후문자열 모두 추출)-INSTR : 특정 문자가 있는 첫번째 위치 반환-LPAD : 오른쪽 정렬 후 왼쪽으로 지정 문자 삽입-RPAD : 왼쪽 정렬 후 오른쪽으로 지정 문자 삽입-LTRIM : 왼쪽 지정 문자 삭제-RTRIM : 오른쪽 지정 문자 삭제-TRIM : 문자열 양쪽 공백 제거 숫자..
현재 접속 DB계정에 생성되어있는 테이블 확인 SELECT * FROM tab; 테이블 구조 확인 DESC table_name; SELECT 절에서 중복데이터를 제거하는 키워드DISTINCT예)SELECT DISTINCT column_name FROM table_name; 컬럼에 대한 별명 부여(alias)-column_name as alias_name-column_name alias_name-column_name "alias_name"어떤 방식으로 사용하든 상관없으나 특수문자를 사용해야할때는 "" 사용 합성연산자 ||Column 2개를 한 Column으로 출력하고 싶을때 사용.조회결과에 무언가를 더하고싶을때 사용예)SELECT column_name || column_name FROM table_name..
window.open() 함수로 띄운 팝업 창에서 부모창의 변수나 함수를 사용하기 위해선 opener를 사용하면 된다.opener는 부모를 지칭하는 객체(?)이고 opener.을 이용해서 부모의 함수에 접근가능. 아래의 예제는 자식창에서 무언가 값을 클릭할 순간 sendChildValue() 함수가 작동되는 코드이다. -자식창에서 얻은값 부모창에 입력하기 부모창함수 function setChildValue(name){ document.getElementById("값 넣을곳 id").value = name; } 자식창함수 function sendChildValue(name){ opener.setChildValue(name); window.close(); } 넣을값구하기(자식창) ${users.name}
- Total
- Today
- Yesterday
- JPA
- Design Pattern
- MySQL
- javascript
- go-core
- Kotlin
- toby
- DesignPattern
- java
- Git
- frontend개발환경
- generics
- programming
- spring cloud
- http
- mariadb
- code
- EffectiveJava
- java8
- 정규표현식
- clean code
- TEST
- frontcode
- Spring
- JavaScript Core
- OOP
- Jackson
- db
- backend개발환경
- servlet
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |