DB
-
Insert시 Data truncated for column 'date' at row 1 경고DB/MySQL 2020. 12. 30. 10:50
데이터 추가는 잘되지만 경고문이 떠서 알아보니 컬럼의 자료형을 넘는 큰 데이터를 넣었을때 발생하는 경고였다. mysql 테이블 생성시 DATE타입으로 컬럼을 생성하고 NOW() 함수로 데이터를 입력하자 데이터 입력은 되나 경고 메세지를 출력하였다. 위의 참고 사이트를 확인하니 DATE타입은 ‘YYYY-MM-DD’형식으로 ‘1000-01-01’부터 ‘9999-12-31’까지만 입력이 된다. DATETIME 데이터 타입은 ‘YYYY-MM-DD HH:MM:SS’형식으로 ‘1000-01-01 00:00:00’부터 ‘9999-12-31 23:59:59’까지 데이터를 입력가능하다. 결론은 NOW() 혹은 SYSDATE()로 현재 날짜와 시간을 읽어와서 데이터를 테이블 컬럼에 입력하고자 할 경우에는 데이터 타입을 D..
-
Oracle, Tomcat 8080 포트 충돌 해결 방법DB/Oracle 2020. 12. 2. 16:00
Oracle이나 Tomcat 둘 중 하나 포트번호를 바꿔준다. 1. Oracle 포트번호 바꾸기 cmd - sqlplus connect system/패스워드 SQL > exec dbms_xdb.sethttpport(변경포트); 바뀐 포트번호 확인 SQL > select dbms_xdb.gethttpport from dual; 2. Tomcat 포트번호 바꾸기 아래 Servers탭에서 추가한 서버를 더블 클릭해서 port 부분 번호 바꿔주기 혹은 프로젝트 밑 Servers를 열어 server.xml에서 바꿔주기 Spring Boot일 경우 application.properties파일에 server.port = 8080 추가
-
Oracle sqlplus ERROR:ORA-12560: TNS:protocol adapter error 해결 방법DB/Oracle 2020. 12. 2. 15:32
Tomcat과 Oracle의 포트번호가 같아서 충돌이 일어나 Oracle의 포트번호를 변경해주려 sqlplus를 실행해서 username과 password를 맞게 입력했는데도 자꾸 ERROR:ORA-12560: TNS:protocol adapter error 라는 에러가 떴다. 그래서 찾아봤더니 oracle이 실행되어있지 않아서 생기는 오류였던것 ㅠ Tomcat과 충돌이 일어나길래 oracle 관련 프로세스들을 종료시켜버려서 그런것이었다. 다시 실행시키는 방법은 아래 블로그 참고! travelbeeee.tistory.com/396 ERROR:ORA-12560: TNS:protocol adapter error 해결방법 Oracle DB에 접속하기 위해 sqlplus에 로그인하려는데 user-name, pa..
-
Oracle SQL developer 실행 안될 때 (unable to launch the java virtual machine msvcr100 dll)DB/Oracle 2020. 12. 2. 15:21
sql developer을 처음 실행할때 jdk경로를 설정하는데 평소 이클립스에서 사용하던 jdk경로를 지정해줬더니 실행이 안된다. unable to launch the java virtual machine msvcr100 dll 이런 오류가 떠서 찾아봤더니 맞춰준 경로에 msvcr100.dll 파일이 없어서 실행이 안된것 파일은 아래 경로에서 찾을 수 있었고, >> C:\Windows\System32 복사해서 jdk\jre\bin 에 넣어주면 잘 실행 된다. >> C:\Program Files\Java\jdk1.8.0_271\jre\bin
-
[MySQL5.7] 한글깨짐 character set UTF8 설정하기DB/MySQL 2020. 6. 4. 18:04
mysql로 jdbc를 이용해 DB에 한글 데이터를 insert하니 한글 값이 '???'로 보여 알아보니 기본값이 latin1이더라. character set을 utf8로 변경해주기로 했다. 우선 cmd창을 열어서 확인해보자. mysql을 관리자 계정(root)으로 접속 후 아래 명령 실행 show variables like 'c%'; status; 나는 다 변경을 해줘서 전부 utf8로 되어있다. 여기서부터 설정 방법! C:\Program Data\MySQL\MySQL Serer 5.7\my.ini 위 경로로 들어가 my.ini파일을 찾아 열어준다. **Program Data 폴더가 안보일 경우 숨김항목 표시 my.ini파일에서 아무것도 건들지말고 맨 아래에 다음내용 복붙! [client] defaul..
-
MySQL 데이터 정의어 DDL (create, alter, drop)DB/MySQL 2020. 6. 2. 22:16
CREATE 테이블 생성 : create table 테이블명( 필드명1 타입 [NULL | NOT NULL][DEFAULT ][AUTO_INCREMENT], 필드명2 타입 [NULL | NOT NULL][DEFAULT ][AUTO_INCREMENT], 필드명3 타입 [NULL | NOT NULL][DEFAULT ][AUTO_INCREMENT], ........... PRIMARY KEY(필드명) ); 데이터 형 외에도 속성값의 빈 값 허용 여부는 NULL 또는 NOT NULL로 설정 DEFAULT : 입력하지 않았을때의 초기값 지정 AUTO_INCREMENT : 자동으로 1씩 증가하는 번호를 위함 --테이블 생성 예제 CREATE TABLE EMPLOYEE( empno INTEGER NOT NULL PR..
-
MySQL 데이터 조작어 DML(select, insert, update, delete)DB/MySQL 2020. 6. 2. 20:15
SELECT 검색(조회) 기본구문 : SELECT(DISTINCT) 컬럼명(ALIAS) FROM 테이블명; 괄호안은 생략 가능 SELECT 뒤 검색하고자하는 데이터(컬럼)를 콤마(,)로 구분하여 나열 전체컬럼은 컬럼명 대신 '*' 를 사용 DISTINCT 사용시 중복행 제거 ALIAS 컬럼의 별칭 부여 FROM 뒤 선택한 컬럼이 있는 테이블 명시 문자열 결합함수 concat 사용 시 두개의 컬럼을 하나의 컬럼으로 결합 --SELECT 예시 --DEPARTMENT테이블의 데이터 전체 조회 SELECT * FROM DEPARTMENT; --EMPLOYEE테이블의 특정 컬럼 조회 SELECT EMPNO,NAME,JOB FROM EMPLOYEE; --컬럼에 별칭부여 select empno as 사번, name ..
-
MySQL Database 생성/계정생성/권한부여DB/MySQL 2020. 6. 2. 03:01
Database 생성하기 cmd에서 아래 명령들을 실행해보자 관리자 계정인 root로 DBMS에 접속 mysql –uroot -p password는 처음 설치 시 입력했던 암호 입력 데이터베이스 생성 명령 create database DB이름; 사용자(계정) 생성과 권한 주기 db이름 뒤의 * 는 모든 권한을 의미한다. @’%’는 어떤 클라이언트에서든 접근 가능하다는 의미이고, @’localhost’는 해당 컴퓨터에서만 접근 가능하다는 의미이다. flush privileges는 DBMS에게 적용을 하라는 의미이다. 해당 명령을 반드시 실행해줘야 한다. mysql 8버전에서는 create user를 먼저 해주고 grant를 해줘야 한다. grant all privileges on db이름.* to 계정이름..