현재 Insert 하려는 데이터가 없으면 Insert, 아니면 아무것도 처리하지 않고 싶을 경우 INSERT INTO table_name (column1, column2) SELECT 'data1', 'data2' FROM DUAL WHERE NOT EXISTS(SELECT * FROM table_name WHERE column1 = 'data1' AND column2 = 'data2'); table_name 이라는 테이블에 column1과 column2에 각각 data1, data2를 추가하고 싶은데 table_name 테이블에서 column1의 값이 data1인 데이터가 없을 때 삽입한다.
컬럼에서 해당 문자열을 추출하고 싶을 때가 있습니다. INSTR('문자열', '추출 문자') - 해당 문자열의 index를 추출 ex ) SELECT INSTR('안녕하세요', '하세요'); -> 3 SUBSTR('문자열', '위치') - 해당 문자열의 위치부터 추출 ex ) SELECT SUBSTR('반갑습니다', 3); -> 습니다 SUBSTRING('문자열', '위치', '길이') - 해당 문자열의 위치부터 길이까지 추출 ex ) SELECT SUBSTRING('공부합시다', 3, 2); -> 합시
데이터 백업 (dump) mysqldump -u (계정명) -p (데이터베이스명) > (파일명) ex. mysqldump -u root -p dbtest > dbtest_backup.sql 데이터 복원 mysql -u (계정명) -p (데이터베이스명) < (파일명) ex. mysql -u root -p dbtest < dbtest_backup.sql 복원 시 다음과 같은 에러가 발생할 경우 access denied you need (at least one of) the super privilege(s) for this operation 해당 sql 파일에 사용자가 아닌 다른 DEFINER가 지정되어 있기 때문. 다음 명령어를 통해 해결 sed 's/\sDEFINER=`[^`]*`@`[^`]*`//g' -..
간혹 문자열을 붙이고 싶은데 제가 겪었던 문제는 그 문자열이 숫자로 되어있을 때가 있었습니다. 예를 들어 varchar 로 구성된 id1과 id2에 각각 id1 = 111 / id2 = 222 값이 들어있을 때, 문자열이라 생각하여 111222 값을 구하고 싶은데 id1 + id2 를 하게 되면 두 수를 더하여 333이라는 값이 나오게 됩니다. 여기서 문자열을 붙이려면 CONCAT을 사용하면 됩니다. CONCAT(id1, id2) 값은 111222 가 나오게 됩니다. CONCAT(id1, id2, id3 ... )
파일을 저장할 때 버전 정보를 저장하는 경우가 간혹 있을겁니다. 바로 예를들어 보죠. 테이블명) file_info filename version a.exe 1.0.8 b.exe 1.0.9 c.exe 1.0.10 다음과 같은 정보를 가진 테이블이 있을 때, 가장 최신 버전은 c.exe 파일일 겁니다. 하지만 단순히 version을 숫자의 크기로 비교하면 가장 높은값은 b.exe의 1.0.9가 될 겁니다. SELECT MAX(version) FROM file_info; MAX(version) 1.0.9 따라서 원하는 결과인 1.0.10을 얻기 위해서는 INET_ATON을 사용합니다. INET_ATON이란, 소수점을 정수로 변환해주는 함수입니다. SELECT *, INET_ATON(version) FROM f..
에러내용은 다음과 같습니다. Could not connect the SSH Tunnel WARNING : Server public key has changed. It means either your're under attack or the administrator has changed the key. New public fingerprint is : 지문 키 ~ 스크린 캡쳐가 있으면 더 좋았겠지만 해결하고 난 뒤 찍을 수가 없었네요.. 모두 같은 상황에서 발생하진 않겠지만 저 같은 경우에는 서버 OS가 같은 IP 주소로 신규 설치되고 그에 따라 당연히 공개키값이 바뀌게 되면서 다음과 같은 에러가 발생했는데요. MySQL Connections 에서 삭제하고 신규로 등록해도 같은 에러가 나왔습니다. 따라서,..
오랜만에 포스팅합니다. 사실 이 내용은 쓸 일이 별로 없을 줄 알았는데, 서버가 날라가고 지난 주에 했던 작업을 다시하느라 한번 더 쓰게 되네요 ^^; 앞으로도 간간히 참고할 것 같아서 포스팅해봅니다 ㅎㅎ # CREATE DATABASE new_database; 변경할 이름의 신규 데이터베이스 생성합니다. # RENAME TABLE old_database.table TO new_database.table; 기존에 있던 데이터베이스에서 테이블들을 이동시킵니다. (테이블이 여러개일 경우 여러번 반복합니다.) # DROP DATABASE old_database; 필요할 경우 기존에 있던 데이터베이스를 삭제합니다. 이상입니다!
- Total
- Today
- Yesterday
- 개별 빌드
- Gif 로딩
- TextClock 상속
- kotlin
- build variants
- Locale 변경
- manifestPlaceholders
- 데이터베이스
- TextClock 언어 변경
- removeAt
- 이부센
- TextClock Format
- Android
- yoyo
- 리눅스
- Coil 0.10.0
- TextClock
- 언어 변환
- 나중에 들어온 아이템 삭제
- mysql
- 안드로이드
- 홈체크
- 이미지 로딩 라이브러리
- java
- 스마트폰
- Insert
- Database
- 빌드 변형
- 사전점검 대행
- e편한세상 부평역 센트럴파크
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |