posted by 지긋이 2021. 1. 22. 17:35

[SQL]
select cast('202101'+'31' as date) as 원하는달마지막날표기
,dateadd(month,5,cast('202101'+'31' as date)) as 원하는달5개월후마지막날표기
,left(REPLACE(dateadd(month,5,cast('202101'+'31' as date)),'-',''),6) as 원하는달5개월후년월표기기호생략

[view]
2021-01-31 원하는달마지막날표기 
2021-06-30 원하는달5개월후마지막날표기 
202106      원하는달5개월후년월표기기호생략

 

posted by 지긋이 2020. 12. 10. 16:22

[Error 구문] SQL 오류: ORA-00984: 열을 사용할 수 없습니다
00984. 00000 -  "column not allowed here"

1. 상황 : 파라미터 개수에 맞춰 insert 도중 발생
2. 원인 : varchar2(문자열) 컬럼에 문자열을 입력하지 않음
ex) NVL(UPPER('rosebay'),admin)
=> NVL(UPPER('rosebay'),'admin') or (UPPER('rosebay'),'') 로 변경시 정상 동작
1) insert 문에서 문자열에 작은따옴표(')  누락(문자열 인식)
- 작은따옴표 대신에 큰따옴표를 사용할 경우
2) 오타(함수 이름 등)

2020. 10. 21. 09:25

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

posted by 지긋이 2020. 10. 16. 11:19

프로젝트별 순수 개발자로 있다가 사내 전산팀으로 바꿨더니 할게 참 많아졌다.

그 중 요즘 제일 곤역인것은 다양한 DB... 10년간 오라클만 썼더니 하하;;
기본적인 문법은 다 비슷한데 약간씩 다른게 있었다. 별거아닌것으로 시간 소비했을때의 기분이란.. 

1. 테이블 생성/수정시 DATA TYPE
1) Numeric(p,[s]) : p 소수점 이하 자리수 포함한 총 자릿수, s 소수점 이하 자릿수[생략가능]
cf) 오라클은 Number, Mysql은 int, bigint, tinyint
2) timestamp, date
cf) 오라클은 date, Mysql은 timestamp
3) char, varchar
cf) 오라클은 char(??Byte), varchar2(??Byte), Mysql은 varchar

2. 테이블 복사
select 컬럼명 into new테이블명 from 원본테이블명 where 조건
cf) 오라클은 create table new테이블명 as select * from 원본테이블명

3. 날짜 기본형 : 현재 날짜 시간을 나타내는 명령어
getdate()
cf) 오라클은 sysdate, Mysql은 now()

4. 형타입 변환
1) CAST(필드명 AS 바꿀 타입) 
ex) cast((필드명) as varchar)
2) CONVERT(바꿀 타입(필드명))
ex1) convert(varchar(필드명))
ex2) convert(char(10),getdate(),102) => 2020.10.12
      convert(char(10),getdate(),112) => 20201012
      convert(char(10),getdate(),126) => 2020-10-16

5. 트랜잭션 기본
- 실행내용 보고 최종반영 하기
begin tran
.. 실행문
commit; 혹은 rollback;

6. NULL처리 isNull
오라클에서 흔히 쓰는 nvl은 mssql에서는 존재하지 않는다.
그럼 어떻게? 이렇게 ISNULL(A.aa, ''
ex) select isnull(left('20200226Ae',9),'') aa ,isnull(null,'없어') bb, isnull(left('ABCDEFGdate',6),'') cc

aa          bb cc
20200226A 없어 ABCDEF


7. 기타

MS-SQL은 Oracle과 같은 가상 테이블을 사용하지 않는다.
즉, from 이하를 생략하고 함수 그대로 사용이 가능하다.
ex1) Oracle 현재 시간 구하기
select sysdate() from dual;
ex2) MS-SQL 현재 시간 구하기
select getdate(); 

** 스크립트 작성
declare @변수명 타입
set @변수명 = 변수값

본문 내용

posted by 지긋이 2020. 10. 12. 15:06

자주 사용할 때는 이런거 찾아보지도 되새겨보지 않아도 잘 썼는데...
역시 근 5년 이상 사용하지 않았더니 vi만 기억이.. 편집기 종료도 기억이 안 나서 인터넷검색이라니...

정보를 정리하는겸 다시 끄적여본다.

1. 터미널의 내가 원하는 파일의 내용을 확인하기 위해 편집기모드로 들어가자.
vi 파일명 ex) vi server.xml
1) 처음 편집기에 들어가게 되면 명령모드로 진입하게 된다.
- 모드는 3가지가 있는데 명령, 입력, ex 명령이 있다.
! 일반적으로 내용을 살펴볼때는 명령모드에서, 내용 수정을 위해서는 입력모드를 사용한다.
입력모드는 명령모드 상태에서 I(현재 커서 위치부터 입력)을 보통 사용하게 되는데 입력모드 전환 명령어는
~~~ 가 있다.
2) 블라블라 내용이 text로 적혀있을 것이고, 내용이 길 경우 다음 페이지를 넘기기 위해서는 pgdn/pgup키를, 한줄씩 이동하여 보고 싶을때는 키보드의 4개 화살표를 이용하여 이동하여 볼 수 있다.
여기에도 키가 다양하게 있는데 ~~~
2. 터미널에서 종료하려면 명령모드에서 일반적으로 :q 후 엔터를 치면 되는데 종료명령어도 여러개다.
1) 종료 명령어
- :q 아무 동작 없이 내용을 보기만 했을때 일반적으로 사용하는 명령어로 vi 편집기 종료
- :q! 변경된 내용이 있어도 무시하고 종료
- :wq 변경된 내용을 저장하고 종료

 

posted by 지긋이 2020. 9. 23. 17:55

오라클과 같은듯 다른점이 많은 MySQL.
회사 주요 사이트가 MySQL로 구성이 되어있어서, 관련 정보를 기록해둔다.

1. DDL
1) 생성
2) 수정
ALTER
 TABLE 테이블명
MODIFY COLUMN 컬럼명 DECIMAL(7,2);

※ 참고 오류 : Data truncation: Out of range value for column '컬럼명' at row 1 와 같은 오류 발생시
입력된 Data가 데이터 타입 크기를 초과해서일 수 있다. 이 경우 크기를 변경해준다.
-- 기존 DECIMAL(5,2) 에서 문제 발생 => DECIMAL(7,2)

2. DML

2020. 9. 9. 14:32

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

2020. 8. 29. 23:33

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

posted by 지긋이 2020. 8. 25. 10:06

10년여 IT계통에 있으면서 사용한 DB가 많지 않아 Tool 또한 Toad, SQL Developer, SQL Gate 등
몇가지 종류밖에 사용하지 않았는데 이번에 그룹내 IT팀에 들어가게 되면서 다양한 DB 사용으로 
다양한 DB를 지원하는 Tool이 필요하게 되었다. 그래서 추천 받은 Tool은 DBeaver!

지원Site : https://dbeaver.io/

 

DBeaver Community | Free Universal Database Tool

DBeaver Universal Database Tool Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase,

dbeaver.io

오픈소스 무료 Tool인데 Mysql, Oracle, PostgreSQL, SQL Server, MariaDB 등 다양한 DB를 지원한다.

새로운 접속을 설정하면(Connet to Database) 각각의 DB를 선택할 수 있게 되어있고,
설정하면서 알아서 플러그인을 다운받아서 사용할 수 있게 만든다.

새로운 툴 사용하기에 좀 꺼리낌이 있기 마련인데 이건 꽤나 편하다.
단축키와 기능만 익히면 애용하게 될 툴!
꾸준한 업데이트 (DBeaver 7.1.5 2020 년 8 월 16 일)로 기업용 Edition도 있으니 참고하면 좋을듯.

 

posted by 지긋이 2020. 8. 22. 03:39

지금 꾸준히 하고 있는 게임. World of warcraft

2004-2006 한참 빠져서 했는데 클래식으로
예전의 불편했던(?) 하지만 추억을 자극하는 게임.

그 옛날엔 게임접속을 2ㅡ3시간 기다려서 했다.
정말 접속자수 대폭발. 그래서 이런것도 남아있고...

15년전. 싸이월드에서 가져왔다.
지금 클래식에도 있는 들꽃향기 😁
만렙달고 얼마 안되서 남겼던거같은데

지금의 1년이 지난 들꽃향기는 차원이 다른 스펙이지만
이때는 1년이 지났을 시점에도 이걸로도 괜찮았었다.

그 때 검은 둥지 레이드 뛰다 지쳐 끼적대다가
안퀴라즈 전에 접었었는데...
지금은 그때 15년전의 같은 길드원들을 만나
안퀴라즈 사원을 다니고 있으니 진짜 세상일이란!