분류 전체보기 250

[오라클] Join문과 Aggregation

이전에는 select에 대해 자세히 알아보았다. 그 때에 쓴 테이블들을 똑같이 써서 join문을 공부해보자. Join 조인이란 둘 이상의 테이블을 합쳐서 하나의 큰 테이블로 만드는 방법 필요성 : 관계형 모델에서는 데이터의 일관성이나 효율을 위하여 데이터의 중복을 최소화한다. fk를 이용하여 참조한다. 여기서 테이블부터 만드는 과정이 초반에 있으므로 파일을 다운받고 참조해서 테이블을 셋팅하자. http://pjh3749.tistory.com/156 그럼 시작하기 전에 emp테이블과 dept테이블의 칼럼부터 확인해보자. emp테이블 dept테이블 그리고 어떤 join들이 있는지 살펴보자. Cross Join (Cartesian Product) : 모든 가능한 쌍이 나타남 Inner Join : Join 조..

[소프트웨어공학] Agile Software Development (애자일 개발 방식)

Agile Software Development Agile : 기민한, 민첩한 애자일 개발 방식에 대해 알아보자. 개념은 소프트웨어 개발 방법에 있어서 아무런 계획이 없는 방법과 지나치게 많은 개발 방법들에서 중간점을 찾고자 하는 방법론이다. 기존의 폭포수모델 같은 전통적인 방법론과의 차이는 less-document-oriented 즉, 문서를 통한 개발 방법이 아니라 code-oriented인 실질적인 코딩을 통한 방법론이다. ● "Rapid" development and delivery is now often the most important requirement for software systems. 비지니스 변화가 빠르고, 요구사항의 변화가 빈번하므로 안정적인 소프트웨어 요구사항을 생성해 내는것이..

[ERD] eXERD 설치와 회원가입 모델링 하는 법

eXERD 는 경력자 뿐만 아니라 초보자도 데이터베이스 설계를 직관적이고, 쉽고, 빠르게 하도록 개발된 이클립스 기반 지능형 모델링 도구이다. 여러 DBMS를 지원한다. Oracle, MS SQL, IBM DB2, PostgreSQL, MySQL을 대상으로 포워드/리버스 엔지니어링을 지원한다. ui도 깔끔하고 직관적이고 매우 좋은 툴이다. 그리고 공부용으로는 무료이다. 당연히 기업유저는 돈을 내야한다. 홈페이지에 들어가서 개인 사용자 무료다운로드를 클릭하여 다운로드를 받자. http://ko.exerd.com/ 다운로드를 클릭하여 개인 사용자를 받아서 설치를 진행한다. 여기서 팁은 저기 설치경로를 C던 D던 편한곳에 exerd폴더를 하나 만들어서 설치를 한다. 그리고 나중에 밑에 처럼 workspace를..

[네트워크] TCP/UDP 와 자바 소켓프로그래밍 예제

■ 소켓 프로그래밍 소켓 프로그래밍이란 소켓을 이용한 통신 프로그래밍을 말한다. 소켓이란 (Socket) 프로세스 통신 간에 사용되는 양쪽 끝단을 의미한다. 즉, 소프트웨어 차원에서 원격에 존재하는 두 호스트를 연결해주는 매개체이다. 대표적으로 TCP 와 UDP이용이 있다. 소켓프로그램은 주로 서버-클라이언트 2개의 프로그램이 쌍을 이룬다. 이런 흐름은 포트에 대기하다가 클라이언트의 연결을 기다리고 (listen), 클라이언트가 접근을 요청하면 받아들여서(accept) 서버-클라이언트 연결을 설정하고, 클라이언트의 여러 명령을 받아서 서비스를 하게 되는 것이다. 비유적으로 생각해보자. 서버소켓은 먼저 소켓을 생성한다. (전화기 구입) 그리고 주소와 포트를 할당한다. (전화번호 개통) 요청대기 (전화를 기..

JQGrid 전자정부프레임워크에 적용하기 - (3)

이제 저장과 삭제를 해 볼 것이다. 저번 포스팅때 프로퍼티의 위치가 좀 틀려서 다시 정리하자면 (없는 것들은 이제 만들 것이다) jqgridTable 안의 프로퍼티 init searchData에서 goSearch로바꾸자. saveData selectData deleteData ajaxFn gridFunc 안의 프로퍼티 addRow rowBtn delRow clearGrid CommonJsUtil 안의 프로퍼티 isEmpty isNumeric 조금 더 알맞게 나누려고 위치를 수정하였다. 코드의 변경은 없으므로 프로퍼티 위치 변경할 때는 그냥 잘라서 붙여넣기 하면 된다. 먼저 조건 하나를 추가해보자. 안해도 상관없다. CommonJsUtil에서 프로퍼티하나를 더 만들어보자. 슬래시 안은 정규식을 의미한다. ..

데이터베이스 모델링과 회원가입 설계

■ 모델링의 정의 모형, 축소형의 의미 사람이 살아가면서 나타날 수 있는 다양한 현상에 대해서 일정한 표기법에 의해 포현해 놓은 모형 사람,사물,개념 등 -> 모델을 만들어가는 일 추상화(모형과,가설적) : 현실시계를 일정한 형식에 맞추어 표현 단순화 : 복잡한 현실세계 -> 약속된 규약에 의해 제한된 표기법이나 언어로 표현 명확화 : 누구나 이해하기 쉽게 대상에 대한 애매모호함을 제거하고 정확하게 현상 기술 ■ 데이터 모델링이란? 정보시스템을 구축하기 위한 데이터 관점의 업무 분석 기법 데이터베이스를 구축하기 위한 분석/설계의 과정 개념 데이터 모델링 : 추상화 수준이 높고 업무중심적이고 포괄적인 수준의 모델링 진행 논리적 데이터 모델링 : 시스템으로 구축하고자 하는 업무에 대해 Key, 속성 관계 등..

Oracle 데이터베이스 Select문 완전정복 -(3)

지난 포스팅에 이어 select를 마저 부셔보자. ## ORDER BY SELECT ename, comm FROM emp ORDER BY comm; comm을 오름차순으로 정렬한다. 여기서 null값은 후방에 나온다. SELECT ename, comm FROM emp ORDER BY comm DESC; comm을 내림차순으로 정렬한다. 여기서는 null이 먼저 튀어나온다. # 급여가 제일 많은 사원부터 출력해보자. SELECT ename, sal FROM emp ORDER BY sal DESC; 자 그런데 저기 노란부분이 좀 거슬린다. 급여가 같아서 모여있는건 맞는데 알파벳 순이 안 맞네. 이것도 이름순으로 정렬하고 싶다. SELECT ename, sal FROM emp ORDER BY sal DESC ..

Oracle 데이터베이스 Select문 완전정복 -(2)

저번 시간에 이어 나머지 select문을 다 부셔보자. Oracle 데이터베이스 Select문 완전정복 - (1) http://pjh3749.tistory.com/156 중요한 내용들만 썼으니 모두 숙지해야 하는 부분이다. SELECT job FROM emp;이거는 결과를 보여주지 않아도 알 것이다. 하지만 여러 job들이 중복해서 나타난다. 중복을 제거하고싶다. select distinct job from emp; 각 직업들이 하나씩만 표시되게 나온다.select distinct deptno,job from emp; select distinct job,deptno from emp; 이렇게 하면 어떻게 될까? 둘이 깉은 결과가 나온다. distinct가 앞의 것에 걸리는게 아니라 전체에 걸린다. 즉, 2..

Oracle 데이터베이스 Select문 완전정복 -(1)

오라클에서 데이터베이스에서 select문을 다 부셔버리자. 먼저 쿼리문을 등록해야한다. 다운받아서 sql developer에 로그인하여 복사 붙여넣기하자. 로그인방법을 모른다면 검색하면 바로 나온다. 이것을 쿼리문 쓰는 곳에다가 붙여넣고 저 두 번째 버튼을 누르면 왼쪽 상단처럼 테이블이 만들어진다. 데이터는 임의로 삽입하였다. 왼쪽상단에 테이블이 만들어진것이 보일 것이다. 이제 select문을 활용하여 보자. EMP 테이블의 내용이다. select ename from emp; emp테이블에서 ename을 뽑아내는 것이다. 이건 쉽다. 하지만 이렇다면? Select Ename From Emp; // 대소문자가 엉켜있다. SELECT ename FROM emp; // 엔터가 쳐져있다. 결과는 같다. 결론은 ..

JQGrid 전자정부프레임워크에 적용하기 - (2)

저번 포스팅에 이은 jqgrid를 알아보자. 이번에는 그리드에 행을 추가하고 삭제하는 방법에 대해서 볼것이다. jqgrid를 처음 띄우는 것 부터 보고 싶다면 밑의 포스팅을 참고하기 바란다. http://pjh3749.tistory.com/154 자 이런식으로 탭을 만들어줄건데 이거만드는 것은 너무 쉬우므로 넘어가겠다. 라고 하지만 코드를 본다면12345조회 행추가저장초기화삭제cs 이렇게 만들어주고 클릭시 스크립트의 함수를 타게 되어 있다. 행추가부터 만들어보자. 행추가는 그리드에서 조회한 데이터들의 밑에 새로운 row를 추가하는 것이다. gridFunc의 addRow()를 타므로 똑같이 만들어 준다. 123456789101112var gridFunc = { addRow : function() { var..

반응형