본문 바로가기

데이터베이스44

mariaDB 마리아DB 컬럼 암호화 복호화 mariaDB 마리아DB 컬럼 암호화 복호화 AES_ENCRYPT(암화화할 값,암호키) AES_DECRYPT(복호화할 값,암호키) 컬럼 타입을 바꿔준다. ALTER TABLE 테이블명 MODIFY 컬럼명 blob; UPDATE 테이블명 a SET a.컬럼명 = AES_ENCRYPT(암호화할컬럼또는데이터, SHA2("암호화비밀번호",512)) , SELECT CONVERT(AES_DECRYPT(암호복호화데이터또는컬럼명,SHA2("암호화비밀번호",512))using euckr) Cus_JuminNumber FROM 테이블명 a 2023. 3. 8.
Sqlite 한글 쿼리시 빈값출력시 Sqlite 한글 쿼리시 빈값출력시 접속 컴포넌튼 파닥 StringFormat를 유니코드로 바꿔준다 2023. 3. 6.
sqlite 팁 TIP sqlite 팁 TIP Sqlite 다중 중첩 case문 case [Su_Volt] when 1 then (case [Su_Kind] when 1 then '6600' when 2 then '440' end) when 2 then (case [Su_Kind] when 1 then '3300' when 2 then '380' end) when 3 then (case [Su_Kind] when 2 then '220' end) end as Su_Volt, expecting: LargeInt actual: WideString TFDQuery and SQLite: Type mismatch for field, expecting: LargeInt actual: WideString SELECT DayTime AS "T.. 2023. 3. 3.
특정문자 바꾸기 특정문자 바꾸기 SQLite :: replace(st,st1,st2),group_concat(fdname) 2023. 2. 23.
테이블, 컬럼의 존재여부 테이블, 컬럼의 존재여부 컬럼을 추가할 때 테이블에 해당 컬럼이 존재하는지 확인할 필요가 있다. 결론만 말하자면 다음과 같은 방법으로 확인한다. ( 사실 다른 방법을 찾지 못했다. -_- ) SELECT sql FROM sqlite_master WHERE name='테이블이름' AND sql LIKE '%컬럼이름%' 컬럼을 추가할 때는 아래와 같은 방법을 사용한다. ALERT TABLE 테이블이름 ADD COLUMN 컬럼이름 컬럼타입 (속성) 2023. 2. 22.
sqlite 형변환 , 특정문자 변환 sqlite 형변환 , 특정문자 변환 select max(cast(bal_value as integer)) from ( select replace(replace(bal_value,'(kW)/',''),'(kVA)','') as bal_value from hst_Generator_Calc where acconut_code = 29) a 2023. 2. 21.
[sqlite] 문자열 자르기 그 외 팁 문자열 자르기 그 외 팁 SELECT substr('yumipink@naver.com', 5) → return : pink@naver.com , substr('yumipink@naver.com', 1,4) → return : yumi , instr('yumipink@naver.com','@') → return : 9 , substr('yumipink@naver.com',1,(instr('yumipink@naver.com','@')-1)) → return : yumipink 2023. 2. 20.
SQLite 다중 스레드 응용프로그램 사용 SQLite 다중 스레드 응용프로그램 사용 1. 개요 SQLite는 세 가지 스레딩 모드를 지원합니다. 단일 스레드. 이 모드에서는 모든 뮤텍스가 비활성화되고 SQLite는 한 번에 단일 스레드에서 사용하지 않는 것이 안전합니다. 멀티 스레드. 이 모드에서SQLite는 두 개 이상의 스레드에서 단일 데이터베이스 연결이 동시에 사용되지 않는 경우 여러 스레드에서 안전하게 사용할 수 있습니다. 직렬화. 직렬화된 모드에서SQLite는 제한 없이 여러 스레드에서 안전하게 사용할 수 있습니다. 스레딩 모드는 컴파일 시간 (SQLite 라이브러리가 소스 코드에서 컴파일되는 경우) 또는 시작 시간 (SQLite를 사용하려는 응용 프로그램이 초기화되는 경우) 또는 런타임(새 SQLite 데이터베이스 연결이 생성되는 경.. 2023. 2. 17.
Date형식 조회/View(가상테이블) /테이블 타입 변경 Date형식 조회/View(가상테이블) /테이블 타입 변경 Date형식 조회 to_date('20070525084214', 'yyyymmddhh24miss') View(가상테이블) 뷰 삭제 DROP VIEW table_name ★★★★★ 다른 테이블을 참조로 뷰를 생성할 경우 뷰에 있는 데이터를 삭제시 원본 테이블도 함께 지워진다!!!!!!!!! 중요!!! 테이블 타입 변경 alter table 테이블명 modity 컬럼명 2023. 2. 14.
전체 테이블 정보 관련 쿼리 오라클 전체 테이블 정보 1. 시스템 테이블을 사용합니다. Oracle에서는 시스템 테이블의 보안유지를 위하여' 시스템 테이블을 Select 할수 있게 View 를 제공합니다. 이중에서 USER_TAB_COLUMNS View를 이용하면 됩니다. SELECT TABLE_NAME , COLUMN_NAME , DATA_TYPE , DATA_LENGTH FROM USER_TAB_COLUMNS; -> 응용 -> 테이블 목록만 : select distinct table_name FROM USER_TAB_COLUMNS; 2. select * from tab; 테이블 목록만 ​3. desc table_name : 해당 테이블 정보 보기 확실한 Query로 드리죠 SELECT A.OWNER OWNER,A.TABLE_NA.. 2023. 2. 10.
오라클 필드에 필드 추가/수정/삭제(Alter table) 오라클 필드에 필드 추가/수정/삭제(Alter table) alter table [table_name] modify( [컬럼명] [변수형] ) =>alter table 도서원장 modify(도서명 varchar2(50)); 도서원장에 존재하는 도서명 컬럼의 데이타 타입을 varchar2(50)으로 바꾼다. alter table [table_name] drop( [컬럼명]) =>alter table 도서원장 drop(도서명); 도서원장에 존재하는 도서명 컬럼을 삭제한다. alter table [table_name] add( [컬럼명] [변수형] ) =>alter table 도서원장 add(출판사코드 varchar2(3)); 도서원장에 출판사코드컬럼을 새로이 추가한다. 2023. 2. 8.
오라클 시퀀스 생성/초기화 오라클 시퀀스 생성/초기화 DROP SEQUENCE PAY_REG_NO create sequence PAY_REG_NO increment by 1 -- 증가값 start with 1 -- 첫 시작값 nomaxvalue -- 최대값 제한 (최대값 제한) nocycle nocache; 2023. 2. 7.
오라클 설치하기-무료버전 오라클 설치하기 오라클 설치하기-무료버전 https://www.youtube.com/watch?v=mJXgnqaGR8o&list=PLuvImYntyp-s76lJiia8YfskDRAypeoyh&index=14 CMD 창을 열고 sqlplus sys as sysdba 입력 비밀번호는 오라클 설치시 설정 해놓은 비밀번호 저는 항상 1234 로해놓습니다. 접속 완료 create user 계정이름 identified by 계정비번; 하면 당연히 만들어 저여하는데 에라가 똮!! 1행에 오류: ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다. 음......... 삽질해보니 오라클 12c로 넘어오면서 계정이름 앞에 c##을 붙여줘야 공통 사용자를 생성가능 하답니다. 다시 create user c##계정이름.. 2023. 2. 6.
오라클 계정생성 오라클 계정생성 우선 system 계정으로 들어간다. 계정생성 conn system/1234; command 창에 이렇게 입력. (system 계정의 초기 비밀번호는 1234이다.) create user c##(원하는 계정명) identified by (비밀번호); (이렇게 계정만 만들면 접속이 안된다. 접속의 권한이 없기 때문이다. 그럴땐 system(관리자)계정으로 권한을 주면 된다. grant connect, resource to c##(원하는 계정명); 계정삭제 drop user c##(지울 계정명); (삭제가 되지 않고 cascade 어쩌고 뜰때가 있는데 이것과 연결된 것이 있기 때문에 삭제가 되지 않는다는 뜻이다.) drop user c##(지울 계정명) cascade; 2023. 2. 3.
오라클 버전 정보 알아내기 오라클 버전 정보 알아내기 >>> V$VERSION 데이터 사전을 사용해 보도록 하쟈 SQL> COL banner FORMAT A70 HEADING "Oracle Versions" SQL> SELECT banner FROM V$VERSION; ***********************************결과 화면*************************************** 그외 정보 알아보기 2.제품 인스톨 정보 조회 >> PRODUCT_COMPONENT_VERSION 데이터 사전을 사용 SQL> COL PRODUCT FORMAT A30 HEADING "Products Installed" SQL> COL VERSION FORMAT A15 SQL> COL STATUS FORMAT A15 SQL>.. 2023. 2. 2.
토드에서 Explain Plan 보는 방법 토드에서 Explain Plan 보는 방법 토드에서 explain plan을 볼려면 아래의 스크립트를 실행 시킵니다. C:\Program Files\Quest Software\TOAD\temps\toadprep.sql toadprep.sql을 열어보면 toad유저를 생성할 때.. 테이블스페이스를 지정하는데 데이타베이스에 존재하는 테이블 스페이스에 맞게 수정해야 합니다. =============== 아래 부분은 제 오라클에 맞게 수정한 부분입니다. ================== CREATE USER TOAD IDENTIFIED BY TOAD DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP QUOTA UNLIMITED ON USERS QUOTA 0K ON SYS.. 2023. 2. 1.
ms sql 포맷 - 콤마 찍기 ms sql 포맷 - 콤마 찍기 숫자만 있는 경우 replace(convert(varchar, cast(숫자필드 AS MONEY),1), '.00','') 위의 경우는 일단 숫자 필드를 MONEY 타입으로 캐스팅 한다 그러면 기본 숫자에 콤마가 찍히게 되고 달러기준 MONEY 표시 이기 때문에 센트 표현을 위해서 #,###.## 의 형태로 나오게 된다. 당연히 소숫점은 없는거라 생각하고 varchar 형태로 바꾼 다음 센트 표시를 하는 소숫점 부분을 replace로 없애버린다고 생각하면된다. ㅇㅋ? CASE WHEN ISNUMERIC(숫자필드) = 0 THEN 숫자필드 ELSE REPLACE(CONVERT(VARCHAR, CAST(숫자필드 AS MONEY),1),'.00','') END 그리고 위의 경우.. 2023. 1. 31.
날짜함수(GETDATE,DATEADD,DATEPART,DATEDIFF) 사용법 & 예제 날짜함수(GETDATE,DATEADD,DATEPART,DATEDIFF) 사용법 & 예제 GETDATE GETDATE함수는 현재 컴퓨터에 설정되어있는 시스템 시간을 불러와주는 함수입니다. 2018-03-31 오전 01:40:30 위와같이 GETDATE()함수는 년월일은 물론이거니와 분,초 까지도 구해줍니다. 하지만 모든 사용자들이 위와같은 형식으로 사용하지는 않겠죠. 여기서 우리는 우리가 표시할 시간이나 날짜만 적절히 뽑아 올 수도 있고 날짜 형태를 바꿔서 출력할수도 있습니다. 사용법 --현재 날짜 출력 -- SELECT GETDATE() AS 시스템일자 --현재 날짜의 연,월,일 출력 -- SELECT YEAR(GETDATE()) AS 년, MONTH(GETDATE()) AS 월, DAY(GETDATE(.. 2023. 1. 30.
second 데이터를"시분초"로 보여주기 second값을 "시분초"로 보여주기 --> 예제: select dbo.FN_CO_DatetimeToHHMISS(DATEDIFF(ss,접수일시,처리일시)) from VOC --> 결과: 39시간 12분 59초 alter FUNCTION [dbo].[FN_CO_DatetimeToHHMISS] ( @ss int ) RETURNS varchar(50) /**************************************************************** 프로그램유형: Function 프로그램ID : 프로그램명: FN_CO_DatetimeToHHMISS 내 용: second값을 "시분초"로 보여주기 작 성 자: 최보현 작 성 일: 2012/01/30 수정 내용: -------------------.. 2023. 1. 28.
DATEDIFF 함수, 날짜계산, DATETIME 계산 DATEDIFF 함수, 날짜계산, DATETIME 계산 DATEDIFF 함수는 DATETIME 형식의 MSSQL 내장함수이다. getdate() : 현재시간 getdate()+1 : 현재시간+1일 예를들어 현재시간(getdate())이 2016년 12월 01일 13:00:00 이면, 현재시간+1(getdate()+1)은 2016년 12월 02일 13:00:00 이다. ​ # 분단위 select DATEDIFF ( mi , getdate() , getdate()+1 ) --==> 1440 분 (1일) # 초단위 select DATEDIFF ( s , getdate() , getdate()+1 ) --==> 86400 초 (1일) # 시간단위 select DATEDIFF ( hour , getdate() ,.. 2023. 1. 27.