일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 데이터베이스
- 스트림릿
- 자바스크립트 공부
- 자바
- Streamlit기본
- 파이썬공부
- 자바프로그래밍
- RESTful API
- JavaScript
- 판다스공부
- Flutter
- 자바공부
- 웹대시보드 기초
- streamlit
- 자바기초
- java
- serverless
- 안드로이드 앱 개발
- Streamlit기초
- MySQL
- 자바초보
- 웹대시보드 제작
- Android
- Pandas
- 파이썬
- db
- 판다스
- 안드로이드 스튜디오
- 자바스크립트
- 스트림릿 기본
- Today
- Total
목록db (20)
ruriruriya
MySQL 에서 TIMESTAMP 타입의 컬럼의 값을 자동으로 생성 시 시간을 입력하는 방법과 업데이트할 때 자동으로 생성되는 시간을 입력하는 방법을 알아보자. 생성시간 자동 입력할 때 컬럼의 Default를 now()로 해준다. 생성 후 업데이트 날짜를 자동으로 입력할 때 컬럼의 Default를 now() on update now() 로 한다. 입력한 뒤 적용하면 CURRENT_TIMESTAMP / ON UPDATE CURRENT_TIMESTAMP 으로 바뀌고 insert를 해보면 자동으로 입력되는 것을 확인할 수 있다.
SQL 문을 통해 데이터베이스를 다루다 보면 다중 컬럼이 아닌 1개의 컬럼에 대해서 UNIQUE 설정을 해야할 때가 오는데 MySQL workbench에서는 손쉽게 설정할 수 있다. 1. UNIQUE 설정 테이블 설정에서 Columns 의 해당 컬럼에 UQ 체크박스를 선택하고 Apply. 2. 설정 확인방법 SQL insert 문으로 해당 컬럼 값 추가해서 확인하기. ddd@naver.com 라는 이메일을 두번 추가하면 두번 째에는 에러코드 Error Code : 1062가 뜬다. Duplicate entry 즉, 중복된 항목으로 Unique 설정으로 허용하지 않는다는 소리이다. insert into user (email) values ('ddd@naver.com'); 이렇게 MySQL workbench..
MySQL에서 ON DELETE CASCADE는 외래 키(foreign key) 제약 조건에서 사용되는 옵션 중 하나이다. 이 설정을 사용하면 참조하는 테이블에서 행을 삭제할 때, 해당 행을 참조하는 다른 테이블의 관련된 행도 자동으로 삭제된다. 예를 들어, USER 테이블과 PHOTOS 테이블이 있고, PHOTOS 테이블의 외래 키가 USER 테이블을 참조하는 경우를 생각해보자. USER 테이블의 행이 삭제되면, 이와 연관된 PHOTOS 테이블의 행도 자동으로 삭제된다. foreign key의 on delete cascade 설정방법 1. 외래 키(foreign key) 설정 해당 테이블 설정에 들어가서 Foreign Key를 새로 생성하면서 Foreign Key Options - on Delete :..
MySQL에서 Error Code 1062는 "Duplicate entry" 에러를 나타낸다. 이 오류는 데이터베이스에서 유니크(unique) 또는 프라이머리 키(primary key) 제약 조건을 위반하여 중복된 값을 삽입하려고 할 때 발생한다. 이 오류를 해결하기 위해서는: 중복 값을 확인: 데이터베이스에 이미 존재하는 값인지 확인해야 한다. SELECT 쿼리를 사용하여 중복된 값을 확인하고, 삽입하려는 값이 이미 존재하는지 확인할 수 있다. 고유한 값을 삽입하거나 업데이트: 중복된 값을 삽입하려는 것을 방지하기 위해 고유한 값을 삽입하거나, 이미 존재하는 값을 업데이트하여 유니크 또는 프라이머리 키 제약 조건을 만족시킬 수 있습니다. 제약 조건 확인 및 수정: 테이블의 제약 조건을 확인하여 중복을 ..
SQL에서의 UNIQUE는 데이터베이스의 테이블 컬럼에 적용되는 제약 조건(Constraint) 중 하나이다. 이는 해당 컬럼(또는 컬럼들)이 가지는 값들이 중복되지 않도록 보장하는 역할을 한다. 테이블의 unique 설정하는 방법 1. 해당 테이블 설정에서 Indexes 시트로 이동 2. Index Name에서 새로 추가하여 Type 을 UNIQUE로 변경한다.(★중요★) 3.Index Columns에서 중복이 되면 안되는 두 컬럼을 체크박스를 선택한다. 그리고 Apply 4. 그리고 다시 중복값을 넣어 테스트 해본다. 값이 user_id 컬럼이 2이고 photo_id 컬럼이 1인 행은 중복이 될 수 없도록 설정이 되었다. 이렇게 안전하게 중복을 막음으로써 버그 등을 방지할 수 있다. UNIQUE 제약..
MySQL의 GROUP BY와 HAVING을 함께 사용하여 조건에 맞는 그룹을 필터링하는 방법 GROUP BY는 데이터를 그룹화하는 데 사용되며, HAVING은 GROUP BY로 그룹화된 데이터에 조건을 적용하는 데 사용된다. 예를 들어, 학생 테이블이 있다고 가정해보자.. 이 테이블에는 학생 이름과 각 학생의 성적이 있다. (평균 값을 내기 위해 점수를 한번 더 추가했다...(두번 째 insert 문)) INSERT INTO students (student_name, grade) VALUES ('Alice', 90), ('Bob', 85), ('Charlie', 75), ('David', 95), ('Emma', 88), ('Frank', 82), ('Grace', 79), ('Henry', 91), ..
MySQL에서 CASE 문과 IF 문은 조건부 로직을 수행하는데 사용된다. 이를 통해 조건에 따라 다른 값을 반환하거나 특정 조건에 따라 다른 작업을 수행할 수 있다. 사용할 테이블(books) 1. CASE문 사용방법 SQL의 case 문은 다른 언어랑 비슷하게 쓰인다. 아래는 case의 기본 구조이다. 예제로 어떻게 작동되는지 알아보자. CASE 컬럼명 WHEN 값1 THEN 결과 WHEN 값2 THEN 결과 ... ELSE 나머지 결과값 END 예제 01 - 출판년도가 2000년 이상인 책들은, '최근책' 이라고 하고, 그렇지 않은 책들은 '예전책'이라고 하여, type 이라는 컬럼을 추가하여 가져오시오. select * , case when released_year >= 2000 then '최근책..
IS NULL은 MySQL에서 NULL 값인지를 확인하기 위해 사용되는 조건으로 NULL은 데이터가 존재하지 않거나 알 수 없는 값을 나타낸다. 사용할 테이블(books) is null Null 이 있는 데이터만 가져오는 방법 다른 문자열이나 숫자열과 다르게 = 부호가 아닌 is 키워드를 사용한다. 이 부분이 많이 혼동될 수 있어서 많이 틀리는 부분이니 잘 알아두도록 하자. 재고가 null 인 데이터만 가져오시오. select * from books where stock_quantity is null; is not null is null의 반대로 null 이 없는 데이터를 찾는 방법이다. select * from books where stock_quantity is not null; ifnull() 함수..