본문 바로가기

IT 스터디13

PostgreSQL 트리거 실행시 재귀(recursion)문제 PostgreSQL에서 테이블의 UPDATE / INSERT시 트리거가 발생하는 경우, 트리거 함수내에서 같은 테이블의 UPDATE / INSERT문이 실행되면 재귀문제가 발생하여 스택오버플로우(stack overflow) 문제가 발생한다. 재귀가 발생하는 문제를 해결하기 위해서는 트리거에 pg_trigger_depth() = 0을 추가한다. CREATE TRIGGER trg_taxonomic_positions AFTER INSERT OR UPDATE OF taxonomic_position ON taxon_concepts FOR EACH ROW WHEN (pg_trigger_depth() = 0) EXECUTE PROCEDURE trg_taxonomic_positions() stack overflow를 .. 2022. 11. 5.
PostgreSQL 트리거 함수 변수값 초기화, 대입하는 방법 PostgreSQL 트리거 함수에서 변수값을 초기화하고 대입하는 방법에는 := 을 사용한다. 1.DECLARE내에서 변수 선언 뒤 값 초기화 하기 ex) value integer := 0; 2.선언 되어진 변수 값 대입하기 ex) value := 5; 2022. 11. 5.
러스트 환경설정 하기 source $HOME/.cargo/env https://www.rust-lang.org/tools/install Install Rust A language empowering everyone to build reliable and efficient software. www.rust-lang.org 에서 명령프롬프트에서 실행한뒤 패키지를 다운로드한 뒤에 cargo명령어를 실행하면 나와 같은 경우에는 -bash: cargo: command not found 와 같은 커맨드를 찾을 수 없다는 결과가 나왔다. 그럴 때는 source $HOME/.cargo/env 를 사용하여 리부팅없이 환경설정 파일을 즉시 실행시킬 수 있다. 2022. 11. 3.
Java 문자 입력 관련 문서아스키 코드표 System.in.read()시스템으로부터 1바이트를 입력받아 정수형으로 리턴한다. 한글은 1바이트로 표현할 수 없기 때문에 숫자와 영문, 특수문자만 입력할 수 있다.int input = System.in.read();System.out.println(input); → 1을 입력하면 49 출력cs아스키코드로 변환된 문자를 원래 입력한 문자로 바꾸고 싶다면?(char) input; //1 입력, 1 출력//혹은char input = (char)System.in.read();csSystem.in.read()를 사용하면서 주의할 점은 버퍼다. 콘솔에서 1을 입력했다고 해서 실제로 1만 입력되는 것이 아니라는 것인데:1입력 → 1 + 위처럼 가 버퍼에 남아버려서 다음과 같은 현상이 발생한.. 2016. 4. 6.