반응형 Oracle18 [ORALCE/오라클] DECODE 사용법 ㅇ안녕하세요. 이번 포스팅에서는 오라클의 DECODE 사용법에 대해서 알아보도록 하겠습니다. DECODE는 프로그래밍 언어에서 흔히 사용하는 IF 문과 비슷한 기능을 하는데요. CASE보다 기능이 약하기는 하지만 손쉽게 사용할 수있어 SQL 쿼리문을 작성할 때 즐겨 사용하는 기능입니다. 주요 사용법은 다음과 같습니다. 1. JOB컬럼 값이 'ANALYST'이면 1, 그렇지 않으면 2를 출력 SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO ,DECODE(JOB,'ANALYST',1,2) FROM EMP; 2. JOB컬럼 값이 'ANALYST'이면 1, 'CLERK'이면 2 그렇지 않으면 3을 출력 SELECT EMPNO, ENAME, JOB, MGR.. 프로그래밍 2018. 12. 7. [ORALCE/오라클] 테이블 상세내역(컬럼 이름 및 형식) 확인하기 안녕하세요. 이번 포스팅은 오라클 테이블의 상세내역(컬럼 이름 및 형식) 확인 방법을 알아보도록 하겠습니다. 방법은 두가지가 있는데요. 1. desc 테이블명을 이용하는 방법 입니다. 2. all_tab_Columns View에서 조회하는 방법 입니다. all_tab_columns View를 이용하면 좀 더 자세한 정보를 조회할 수있는데요. 다른 계정의 동일한 이름을 가진 테이블의 정보도 조회 할 수 있고, 컬럼 이름으로 테이블을 찾을 수 있는 장점이 있어서 특별한 경우가 아니면 all_tab_columns를 이용하게 됩니다. 이상으로 테이블 상세내역(컬럼 이름 및 형식) 확인하기 포스팅을 마치도록 하겠습니다. 프로그래밍 2018. 12. 5. [프로그래밍/C#] SELECT 쿼리(DataSet) 이용한 COMBOX(콤보박스) 값 설정 안녕하세요. 배당농부입니다. 이번 포스팅은 SELECT 쿼리를 이용한 COMBOX(콤보박스) 값 설정입니다. 1. 데이터베이스에서 데이터를 읽어옵니다. 참조 : 2018/11/30 - [정보시스템 개발/5. C#] - [프로그래밍/C#] ODP.NET 을 이용하여 오라클 연결 및 SELECT 쿼리결과를 DataSet에 바인딩 위의 포스팅을 보시면 ORACLE에 연결해서 DATASET에 데이터를 담는것 까지 진행할 수 있습니다. 2. 읽어온 데이터를 COMBOX에 할당합니다. comboBox1.DataSource = ds.Tables[0]; comboBox1.DisplayMember = "ENAME"; //콤보박스에서 사용자들에게 보여지는 값으로 SELECT 쿼리의 컬럼 중 하나라를 선택합니다. combo.. 프로그래밍 2018. 12. 1. [프로그래밍/C#] ODP.NET 을 이용하여 오라클 연결 및 SELECT 쿼리결과를 DataSet에 바인딩 C# 에서 ODP.NET을 이용한 오라클 연결 및 SELECT 문 실행 예제 입니다. 1. ODP.NET 참조 추가후 라이브러리 추가 Oracle.DataAccess.Client를 추가합니다. 2. 다음의 소스를 추가하여 줍니다. //주용 변수 선언 OracleCommand cmd = new OracleCommand(); OracleConnection oracleConnection = new OracleConnection(); OracleDataAdapter oraAdapter = new OracleDataAdapter(); DataSet ds = new DataSet(); //오라클 DB연결문 작성 string con_str = "User ID= 아이디입력;Password=패스워드입력;pooling=f.. 프로그래밍 2018. 11. 30. 주식분석프로그램 개발 2(C#, ORACLE, OPEN API) 안녕하세요 배당농부입니다. 이번포스팅은 C#, ORACLE, OPEN API를 이용한 주식분석프로그램 개발 2편입니다. 이번 포스팅에서는 새로운 화면을 추가하고 데이터 조회 화면을 만드는 것까지 해보도록 하겠습니다. 먼저 프로젝트를 선택하여 우클릭한 후 추가 -> 새폴더를 선택합니다. 새폴더의 이름을 Forms로 바꾼후 마찬가치로 우 클릭 후 새 항목을 클릭하여 새로운 Form을 추가하고, 이름을 Menu1로 바꾸어 줍니다. Form 속성 중 size를 800,600, TEXT를 주식기본정보조회 로 변경합니다. Menu1 폼에 splitContainer를 추가한 합니다. splitContainer의 속성을 가로 분할기 방향으로 변경합니다. Panel의 위아래 크기를 적당히 조정한 다음 Fiexed Pan.. 프로그래밍/자동 주식거래 시스템 만들기 2018. 10. 26. 주식분석프로그램 개발 1(C#, ORACLE, OPEN API) 안녕하세요. 배당농부입니다. 이번 포스팅은 주식분석시스템 개발 포스팅입니다. 주식투자 공부를 하면서 각종 데이터를 수집, 관리하는 프로그램의 필요성을 느끼게 되었고, 개발하기로 마음을 먹었습니다. 틈틈히 개발할 예정이며, 개발과정을 블로그에 포스팅 하도록 하겠습니다. 어느정도 개발되면 프로그램도 공유할 예정이니 앞으로 많은 관심 부탁드리겠습니다. 1. 개발환경 UI 개발은 C# (VISUAL STUDIO 2017), 데이터베이스는 ORACLE, 주식자료는 각종 통계사이트에서 제공하는 OPEN API를 이용해 수집할 예정입니다. 2. 메뉴구성 메뉴는 크게 자료수집, 주식분석, 투자 시뮬레이션 기능으로 구성할 예정인데요. 자료수집은 각종 사이트에서 주식분석에 필요한 자료를 수집하는 기능이며, 주식분석은 각종.. 프로그래밍/자동 주식거래 시스템 만들기 2018. 10. 24. [프로그래밍/C#] System.Exception: OCIEnvCreate이(가) 반환 코드 -1과 함께 실패 윈도우 포맷 후 프로그램을 실행하였는데, 다음과 같은 메세지가 떴습니다. 오라클 클라이어튼 설치와 TNS 설정도 정상적으로 완료가 되었는데 프로그램만 실행하면 System.Exception: OCIEnvCreate이(가) 반환 코드 -1과 함께 실패했지만 오류메세지 텍스트는 사용할 수 없습니다 라는 생전 처음보는 메세지가 떴는데, 구글 검색해도 뚜렷한 해결책이 보이지 않아서 완전 멘붕이였는데이런 저런 삽질끝에 해결책을 찾았습니다. 해결책은 바로 프로그램을 관리자 권한으로 실행 이였습니다. 프로그램을 관리자 권한으로 실행하니 아무 문제없이 실행되더군요.당황하지 마시고 관리자 권한으로 한번 실행해보세요~ ㅎㅎ 프로그래밍 2018. 9. 27. 프로그램에서 오라클프로시저 호출할때 ORA-06502 오류가 발생할 경우 C#에서 오라클 프로시저를 호출하는데 ORA-06502: PL/SQL: numeric or value error: character string buffer too small 오류가 발생했다. 일반적으로 ORA-06502 오류는 변수의 사이즈보다 큰 값을 할당했을때 발생하는 오류로 해당 변수의 크기를 늘려주면 해결된다. VARCHAR2(20) -> VARCHAR2(40)으로 바꾸면 해결되는데 이번에는 SQLPLUS 에서 해당 프로시저를 호출했을때는 아무 문제가 없었고, 구글 검색을 해봐도 앞서 말한것처럼 변수의 크기를 늘려야한다는 말이 전부였다. 어떤 문제인지 감이 안와서 이리저리 테스해보다가 혹시나 하는 마음에 다른부분을 전부 주석처리하고 리턴값에 강제로 값을 할당했는데도 동일한 문제가 발생했다. 아무.. 프로그래밍/3. ORACLE 2018. 7. 23. ORACLE 특정날짜가 당월에 몇 주 차인지 나타내는 쿼리 주 52시간 제도 때문에 프로그램 수정하다가 남겨놔야 될 듯하여 포스팅함. ORACLE에서 특정 날짜가 당월에 몇 주 차인지 나타내는 쿼리 SELECT TO_CHAR(TO_DATE('20180629','YYYYMMDD'),'W') FROM DUAL; 결과값 5 SELECT TO_CHAR(TO_DATE('20180618','YYYYMMDD'),'W') FROM DUAL;결과값 3 프로그래밍/3. ORACLE 2018. 6. 29. ORACLE ORA-01850: hour must be between 0 and 23 ORA-01850: hour must be between 0 and 23 TO_DATE(날짜,'YYYYMMDDHH24MI') 했을때시간이 '2400'이면 발생하는 오류 해결책 : '2400'을 '0000'으로 바꾼 다음 날짜를 +1일 해주도록 하자. select to_date(replace('201806292400','2400','0000'),'yyyymmddhh24mi')+1from dual 프로그래밍/3. ORACLE 2018. 6. 29. ORACLE ORA-01812 에러코드 ORA-01812: year may only be specified once TO_DATE(변수, 'YYYYMMDD') 문구에서 Y가 4개가 되어야하는데 5개나 그 이상 들어가있으면 발생하는 오류 프로그래밍/3. ORACLE 2018. 6. 25. [오라클/ORACLE] 오라클 메모리 오라클 메모리는 크게 SGA(System Global Area)와 PGA(Program Global Area)로 구분할 수 있습니다. SGA - 모든 사용자가 공유하는 메모리 PGA - 각 사용자가 개별적으로 사용하는 메모리 오라클은 디스크에서 읽어온 데이터를 메모리에 보관한 다음에 데이터를 조회하거나 변경하는 작업을 수행합니다. 이때 데이터가 저장되는 메모리가 SGA입니다. SGA는 5개의 세부영역(공유 풀(Shared Pool), 데이터 버퍼 캐쉬(Data Buffer Cache), 리두 로그 버퍼(Redo Log Buffer), 대형 풀(Large Pool) 및 자바 풀 (Java Pool))로 구분할 수 있습니다. 오라클 서버의 SGA 설정값을 확인하는 방법은 다음과 같습니다. SHOW SGA S.. 프로그래밍/3. ORACLE 2013. 4. 22. 이전 1 2 다음 반응형