본문 바로가기

Database6

[Oracle] 오라클 instr() 함수 /* instr(문자열, 검색할 문자, 시작지점, n번째 검색단어) - 찾는 문자의 위치를 반환 - 찾는 문자가 없으면 0을 반환 - 찾는 단어 앞글자의 인덱스를 반환 - 시작지점에 -1을 넣을 경우 뒤에서 부터 시작 */ SELECT instr('Hello Oracle', 'O') as instr FROM dual; -- 7 SELECT instr('Hello Oracle', 'Ox') as instr FROM dual; -- 0 SELECT instr('Hello Oracle', 'Or') as instr FROM dual; -- 7 SELECT instr('Hello Oracle', 'l') as instr FROM dual; -- 3 SELECT instr('Hello Oracle', 'l', 5.. 2021. 8. 12.
[Oracle] 제약조건 CONSTRAINT 제약조건 CONSTRAINT NOT NULL -- 해당 컬럼에 null값이 들어오지 못하도록 함 UNIQUE -- null은 허용하지만 중복은 저장하지 못함 PRIMARY KEY -- null과 중복을 저장하지 못함, 테이블에 저장된 데이터를 고유하게 식별하기 위한 키를 정의, 인덱싱 기능, FOREIGN KEY의 원본 테이블의 필드 DEFAULT -- null값이 입력될 경우 default로 정의된 값이 자동으로 입력 CHECK -- 컬럼에 정해진 데이터 조건을 지정하여 그 범위내에 데이터만 입력 -- 테이블 만들기 CREATE TABLE tb_student( stu_idx NUMBER(5) NOT NULL, -- 99999까지 stu_name VARCHAR2(20) NOT NULL, stu_age N.. 2021. 8. 12.
[Oracle] 데이터 타입 문자열 CHAR -- 고정길이 문자열을 취급, 최대 2000byte(한글 약 666글자), 기억장소가 남으면 공백이 삽입, 기억공간보다 큰 데이터는 저장오류 VARCHAR2 -- 가변길이 문자열을 취급, 최대4000byte(약 1300글자), 기억장소가 남으면 남은 공간은 시스템에 반남, varchar와 같은 기능이나 오라클은 varchar2를 권장 CLOB (varchar2를 넘어갈 것 같으면 clob을 사용) -- 대용량 문자열 자료를 처리하기 위한 타입, 최대 4GB까지 처리 가능, 가변길이 문자 자료형 ⊙ NVLOB, NVARCHAR2는 다국어를 지원, UTF-8, UTF-16형식을 ENCODING -> 다국어를 지원해야 할 경우 사용 숫자 NUMBER(정밀도|스케일) -- 표현할 수 있는 값의 .. 2021. 8. 12.
[Python sqlite3] OperationalError : database is locked (데이터 베이스 잠김 에러) 파이썬을 DB에 연결해주고 데이터를 추가하고 변경하려고 다른 파일창을 여러장 켜서 연결하여 작업중이었는데 무엇때문인지 같은 에러가 계속 발생했다. 에러는 바로 다음의 에러이다. OperationalError sqlite3.operationalerror: database is locked 데이터베이스가 잠겨있다니 이상했다.... 그래서 구글링 한 결과 장고문서에서 SQLite는 경량 데이터베이스이므로 높은 수준의 동시성을 지원할 수 없다고 한다. "데이터베이스가 잠겼음" 오류 SQLite는 경량 데이터베이스가 되어 높은 수준의 동시성을 지원할 수 없습니다. OperationalError: database is locked 오류는 응용 프로그램이 기본 구성에서 처리할 수 있는 sqlite보다 더 많은 동시성.. 2021. 4. 6.