농장/DB 16

[MySQL] JSON 타입 사용해서 JSON Array 다루기

MySQL에 JSON 타입이 지원되기 시작한 건 version 5.7.8 in mid 2015 부터이다. MySQL 5.7 공식 가이드 이 글에선 8.0 기준으로 설명한다. 개발 공부할때 직접 쿼리를 돌려가보면서 확인하기 귀찮은 나같은 사람에게 이 글을 바친다. JSON 타입을 적극 활용하자! JSON 타입 컬럼에 값을 insert할때 유효성검사를 시스템에서 자동으로 해주므로, 5.7.8 이상 버전을 사용한다면 구지 varchar, text와 같은 문자열 타입 컬럼에 json 형태 string을 저장할 필요가 없다. 또한 JSON 컬럼에 저장된 데이터는 시스템 자체에서 json 객체로 인식하기 때문에 적합하고 사용이 편리하다. JSON 타입 컬럼의 사이즈 한도 LONGBLOB, LONGTEXT 타입과 거..

농장/DB 2023.09.16

H2 Database 설치하고 실행하기 / Spring boot와 연동하는 법 (Maven 기준)

H2 데이터베이스란? 나도 잘 모른다. php myadmin처럼 웹에서 콘솔이용이 가능하다. 가볍고 편리하다. 난 Spring Boot에 연동하여 사용하고 있다. 설치하기 www.h2database.com/html/main.html H2 Database Engine H2 Database Engine Welcome to H2, the Java SQL database. The main features of H2 are: Very fast, open source, JDBC API Embedded and server modes; in-memory databases Browser based Console application Small footprint: around 2 MB jar file size Suppor..

농장/DB 2021.04.01

[MariaDB/JSP] ClassNotFoundException 에러 해결방법

Eclipse에서 Dynamic Web Project로 JSP코드를 짜다가 분명 구글링대로 mariadb-java-client.jar 파일을 라이브러리에 추가하였음에도 불구하고 ClassNotFoundException가 계속 떴다. 원인불명 상태.. 해결방법: 프로젝트 우클릭>Properties>Deployment Assembly>Add>Java Build Path Entries 선택>mariadb-java-client.jar 선택>추가완료>이클립스 재부팅(권장) mariadb 전용 JDBC가 결국 WEB-INF/lib폴더에도 위치하는게 중요한 듯 하다.

농장/DB 2020.05.27

[MariaDB] INSERT문 한글 오류(Incorrect string value) 해결

my.ini 파일에 아래 속성을 지정 [mysqld] init_connect="SET collation_connection = utf8_general_ci" init_connect="SET NAMES utf8" collation-server = utf8_general_ci character-set-server = utf8 [client] default-character-set = utf8 [mysql] default-character-set=utf8​ Mysql> SHOW VARIABLES LIKE "c%" 명령 입력 후 Value값에 'latin1'이 있으면 안됨. 모두 'utf8'로 바꾼다. 쿼리창에서 속성 설정을 할 수 있다. (my.ini 수정만으로 변경 안 될 경우) Mysql> SET [Var..

농장/DB 2020.05.26

MariaDB 사용자 계정 조회 안될 때, root 접속 오류 해결, 사용자 계정 전환하기

Mariadb root user access denied 어쩌고저쩌고 오류가 뜰때, 아마 콘솔 창 입력 줄에 MariaDB [(none)]> 라고 되어있을 것이다. show db 같은 쿼리는 먹는데 select 등 다른건 안 된다. 아래를 따라하면 사용자 계정 조회를 할 수 있다. MariaDB [(none)]> use mysql; Database changed MariaDB [mysql]> select host,user from user; 사용자 계정 전환하기 MariaDB Client 콘솔 프로그램에서 처음에는 비밀번호를 입력하라고 나온다. 아마 root:localhost 기본 계정에 접속하는 것 같다. MariaDB [none]> quit 입력하면 Sql 클라이언트 창에서 나가지고 MariaDB설치..

농장/DB 2020.05.19

MariaDB Sql 문법 정리

SQL Query 목록 https://mariadb.com/kb/ko/basic-sql-statements/ 기본 SQL 문장 이 페이지 목록에는 가장 중요한 SQL 문장들과 그 문장에 관련된 문서에 대한 링크를 포함하고 있다. 만약 여러분에게 MariaDB 서버를 어떻게 사용하는지 간단한 명령어들을 어떻게 실행해야하는�� mariadb.com 이론 정보 https://m.blog.naver.com/PostView.nhn?blogId=hmkuak&logNo=220583392375&proxyReferer=https:%2F%2Fwww.google.com%2F MariaDB 관련 자료모음 (※SQL) (이론/문법/사용) ▼데이터베이스 이론 (1) 데이터베이스 개요 및 데이터베이스 시스템 http://seung..

농장/DB 2020.05.19

[MariaDB] JDBC 연동하기 in Eclipse (java와 연동)

Java 코드 내에서 마리아db를 사용하기 위해 JDBC를 연결해보겠다. https://downloads.mariadb.org/connector-java/2.6.0/ MariaDB Connector/J 2.6.0 Stable - MariaDB downloads.mariadb.org 다운받은 jar파일을 사용할 프로젝트가 있는 워크스페이스 폴더에 넣어주었다. 이제 이클립스로 와서 마리아db를 사용할 프로젝트 우클릭>Properties>Java Build Path 아까 옮겼던 jar파일 선택 ClassNotFoundException 오류 해결하기: https://we-always-fight-with-code.tistory.com/61 [MariaDB/JSP] ClassNotFoundException 에러 해..

농장/DB 2020.04.23

Oracle SQL Developer 접속 에러 해결

https://culinarydeveloper.tistory.com/42 참고 오라클(Oracle) SQL Developer 접속에러 - Listener refused the connection with the following error Oracle 사에서 제공하는 DBMS인 SQL developer를 이용하다 보면 다음과 같은 에러가 발생하는 경우가 종종 있습니다. 내용을 보면 Listener refused the connection with the following error: ORA-12505, TNS:li.. culinarydeveloper.tistory.com Oracle SQL developer Error 데이터베이스 접속 오류 메시지 Listener refused the connection..

농장/DB 2020.03.19

[ Oracle DB ] cmd창에서 계정 생성, 테이블 생성, 삽입, 조회하기

SQL 접속 후 sys계정(모든 권한)으로 접속. oracle db setup.exe를 설치할 때 지정한 비밀번호를 입력한다(입력값이 보이지 않는다). sys계정으로 접속된 상태에서 생성된 유저에게 권한을 부여한다. (데이터 베이스 연결과 데이터관리 권한) 이 유저로 접속하기 위해 exit명령을 사용하여 sql에서 빠져나온 후 다시 접속하여 해당 유저에 설정했던 비밀번호로 접속. show user 라고 명령을 치면 접속된 계정 이름을 볼 수 있다. 테이블 조회도 해보았다. 물론 당연히 비어있다. +Mysql과 달리 스키마 접속 단계가 없다... 음... oracle db는 나도 오늘 첨 써봐서 잘 모르겠다. 무튼 그래서 곧바로 테이블을 하나 만들어보았다. 만든 테이블 조회까지. tab이 전체를 지칭하는 ..

농장/DB 2020.03.19

[ MySQL ] 데이터베이스 공유 & 타 데이터베이스 접속하기

[MySQL 데이터베이스를 로컬에서까지는 다룰 수 있는 사람 대상의 자료입니다. 필자역시 초보이니 100%신뢰는 X.] MySQL은 하나의 데이터베이스(서버)를 여러 사람 또는 PC가 공유할 수 있다. 근데 그 방법이 초보에겐 너무나 어렵다 .. Y . Y 과정을 요약하자면 1. 로컬이 아닌 외부접근가능 새계정을 생성한다. 2. 새계정에게 root 접속 권한을 허용한다. 3. 타 PC에서 ip연결을 통해 새계정으로 접속한다. 4. 연결 ! 이제 그 방법을 알아보자 ※ 테스트를 진행한 두 기기는 같은 무선인터넷에 연결되어있다. MySQL 데이터베이스 공유하기 콘솔을 사용해도 되나, 저는 GUI툴을 사용하겠습니다. 필자의 MySQL 버전은 8.0입니다. 0. 먼저 데이터를 가진 서버 역할의 PC의 MySQL..

농장/DB 2020.01.12

[ SQL ] 테이블 생성시 이미 존재하는지 확인하기 How to check this table already exist

Java 코드 상에서 Mysql 또는 SQlite 테이블을 생성하고자 할 때 그 테이블이 이미 있다면 생성하지 않게 하는 방법이다. stmt = conn.createStatement(); String SQL = "CREATE TABLE IF NOT EXISTS 테이블명(테이블 정보)"; stmt.executeUpdate(SQL);​ 프로그램 첫 줄에 삽입할 경우 프로그램 최초 실행시엔 테이블이 존재하지 않기 때문에 생성되지만 테이블이 생성된 이후부터는 IF NOT EXISTS로 테이블 생성이 되지 않는다.

농장/DB 2020.01.12