일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- HeidiSQL
- Deep Learning
- 정확도
- sklearn
- pythone
- 오라클
- 데이터 수집
- 데이터전처리
- 회귀모델
- python기초
- pandas
- 데이터
- 데이터베이스
- 딥러닝
- 예측
- sql
- python
- 머신러닝
- 파싱 오류
- 해석
- Oracle
- keras
- 데이터 가공
- 데이터 분석
- 훈련
- DB
- 시각화
- Database
- MariaDB
- tensorflow
- Today
- Total
목록데이터베이스 (24)
코딩헤딩

자주는 아니기에 익숙하지 않은 실무에서 갑자기 등장할 수 있는 고급 오류. 1. ORA-03113: end-of-file on communication channel 의미 : Oracle 클라이언트와 서버 간 연결이 비정상적으로 종료됨원인 : DB 서버 강제 종료 or crash, 네트워크 연결 문제, Oracle 백그라운드 프로세스 비정상 종료-- SQL*Plus, JDBC 등에서 쿼리 실행 중 갑자기 연결 끊김 -- 해결 방법 -- DBA에게 alert log (alert_ORCL.log) 확인 요청, 서버 및 listener 상태 확인 2. ORA-02049: timeout: distributed transaction waiting for lock 의미 : 분산 트랜잭션 중 다른 세션의 락을 기..

익숙한 실수지만 디버깅에 시간이 오래 걸리는 오류 1. ORA-00932: inconsistent datatypes: expected X got Y 의미 : 서로 다른 타입끼리 비교하거나 연산 시 발생원인 : VARCHAR2 컬럼과 NUMBER 값 비교, 날짜형끼리 = 또는 + 연산 시 타입 불일치SELECT * FROM users WHERE user_id = '100'; -- user_id가 NUMBER 타입일 때 -- 올바른 예SELECT * FROM users WHERE user_id = TO_NUMBER('100');-- 해결방법 타입 맞춰주기 (TO_NUMBER, TO_CHAR 등 사용)-- 또는숫자 그대로 사용SELECT * FROM users WHERE user_id = 100; 2..

1. ORA-01017: invalid username/password; logon denied 의미 : 사용자 이름 또는 비밀번호가 잘못되어 접속 실패원인 : 아이디 또는 비밀번호 오타, 대소문자 구분 (특히 Oracle 12c 이후), 비밀번호 정책에 따라 계정이 잠겼거나 만료됨sqlplus wrong_user/wrong_pass@ORCL -- 해결방법 -- 아이디/비밀번호 정확히 확인, 대소문자 확인, DBA가 계정 잠금 여부 확인: SELECT username, account_status FROM dba_users WHERE username = '사용자명';ALTER USER 사용자명 ACCOUNT UNLOCK; --잠금해제 2. ORA-01400: cannot insert NULL..

1. ORA-00936: missing expression 의미 : SQL 구문에 필수적인 표현식이 빠짐.원인 : SELECT, INSERT 등의 구문에 컬럼이나 값이 빠짐, 괄호 안이 비어 있는 경우SELECT FROM users; -- 올바른 예SELECT username FROM users; 2. ORA-01722: invalid number 의미 : 문자형 값을 숫자로 변환하려다가 실패함원인 : WHERE 절에서 숫자형 컬럼에 문자 입력, TO_NUMBER 또는 숫자 연산 시 문자값 사용SELECT * FROM users WHERE age = 'abc';-- 올바른 예 --age가 숫자형인데 'abc'는 숫자가 아님 또는 문자형 컬럼에 IS NUMERIC 체크 후 비교SELECT * FROM ..

1. ORA-00933: SQL command not properly ended의미 : SQL 문이 문법적으로 잘못 종료됨.원인 : ORDER BY, GROUP BY 등의 문법이 잘못되었거나, INSERT, UPDATE, SELECT 구문의 문법 오류String sql = "SELECT * FROM users;"; -- 오류 원인: Java, JDBC, MyBatis 등에서는 세미콜론 ; 제거해야 함 -- 해결방법 : SQL 구문 구조 다시 확인 (특히 JOIN, ORDER BY 부분) -- 올바른 예 String sql = "SELECT * FROM users"; 2. ORA-00904: "컬럼명": invalid identifier 의미 : 컬럼 이름이 잘못되었거나 존재하지 않음원인 : 컬..

1. with rollup - 2개 이상의 컬럼을 이용하여 그룹을 짓는 경우. - 그룹별 중간합계(집계함수에 대해서)를 표시. - 마지막 행에는 전체합계가 표시됨. * with rollup 예제 상품분류 전체에 대한 상품이름과 구매수량의 총 합 조회하기. 단, 구매 연도가 2005년 prod, cart테이블만 사용 SELECT LEFT(prod_id, 4) AS lgu, prod_name, SUM(cart_qty) AS total FROM prod LEFT OUTER JOIN cart ON(prod_id = cart_prod AND SUBSTRING(cart_no,1,4) = '2005') GROUP BY LEFT(prod_id,4), prod_name WITH ROLLUP; 2. view (가상테이블)..

* exist(조회) - 조회결과가 1건이라도 있으며 True / 0건이면 False - 서브쿼리를 적용(다중컬럼의 다중행 모두 가능) => 구매내역이 없는 회원만 조회하기 SELECT mem_id, mem_name FROM member WHERE NOT EXISTS(SELECT cart_member FROM cart WHERE cart_member = mem_id); 예제1) - 2005년도 구매내역이 있는 회원에 대한 - 회원아이디, 회원이름, 마일리지 조회 - 단, 구매내역이 있는 회원의 총구매금액이 3천만원 이상인 데이터에 대해서만 조회 SELECT mem_id, mem_name, mem_mileage FROM member WHERE EXISTS(SELECT SUM(cart_qty*prod_sal..