프로그램개발/Database(7)
-
Docker로 Database 설치하기
PostgreSql $ docker pull postgres:latest $ docker volume create pgdata $ docker run -p 5432:5432 --name PostgreSql -e POSTGRES_PASSWORD= -e TZ=Asia/Seoul -d -v pgdata:/var/lib/postgresql/data -d postgres:latest MariaDB $ docker pull mariadb:latest $ docker volume create mariadata $ docker run -p 3306:3306 --name MariaDB -e MARIADB_ROOT_PASSWORD= -d -v mariadata:/var/lib/mariadb/data -d mariadb:l..
2023.10.15 -
[Postgres] LastIndexOf 함수
CREATE OR REPLACE FUNCTION LastIndexOf(text,char) RETURNS integer LANGUAGE SQL AS $$ select LENGTH($1) - strpos(reverse($1),$2) $$;
2022.12.13 -
[Postgresql] uuid 생성함수
uuid 생성방법에는 여러가지가 있다. 방법1. CREATE OR REPLACE FUNCTION gen_uuid() RETURNS uuid stable language sql as 'SELECT md5(random()::text || clock_timestamp()::text)::uuid'; SELECT gen_uuid(); 방법2 CREATE EXTENSION "uuid-ossp"; SELECT uuid_generate_v4();
2022.12.13 -
[Postgresql] 외부 테이블 참조 하기
postgresql은 동일 서버내의 db를 참조할수 있는 방법이 없다. (나름충격) 다 따로 만들어 줘야됨. CREATE EXTENSION postgres_fdw; CREATE SERVER Foreign_Server FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host 'my.domain.com', port '5432', dbname 'mydb'); CREATE USER MAPPING FOR localuser SERVER Foreign_Server OPTIONS (user 'ForeignUser', password 'password'); CREATE FOREIGN TABLE ft_table ( columnName varchar(50) NOT NULL ) SERVER For..
2022.12.13 -
[Oracle]오라클에서 트리거로 웹가져오기(?)
오라클에서 트리거로 웹가져오기(?) create or replace TRIGGER TEST_TABLE_TRIGGER AFTER INSERT OR UPDATE OF NAME ON TEST_TABLE for each row DECLARE req utl_http.req; res utl_http.resp; value VARCHAR2(4000); BEGIN SELECT UTL_HTTP.REQUEST('http://10.10.11.18:5051/api/status/ping') INTO value FROM DUAL; EXCEPTION WHEN UTL_HTTP.END_OF_BODY THEN UTL_HTTP.END_RESPONSE(res); WHEN OTHERS THEN RAISE_APPLICATION_ERROR ( -..
2022.06.14 -
[Postgresql] postgresql time zone변경
가끔 DB 시간 때문에 혼동이 오는 데 이럴때 유용합니다. // 현재 타임존 확인 SELECT current_setting('TIMEZONE'), now(); //타임존을 서울로 변경 SET TIME ZONE 'Asia/Seoul'; //리부팅 없이 바로 적용 SELECT pg_reload_conf();
2021.07.20