Postgres 란 무엇인가
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
해당 자료는 10페이지 까지만 미리보기를 제공합니다.
10페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

1. 소개
1.1. Postgres 란 무엇인가?
1.2. Postgres 프로젝트에 대한 간단한 역사.
1.3. PostgresSQL 의 기능
1.4. PostreSQL 95란 무엇인가?
1.5. PostreSQL 95의 동작방식에대한 개념

2. 설치
2.1 들어가기 전에
2.1.1 필자설치 Hardware 정보
2.1.2 필자 설치 Software 정보
2.1.3 설치 요구사항
2.1.4 기존 패키지 삭제 (RedHat 기준)
2.1.5 쉘모양 설명
2.2 설치 시작
2.2.1 PostgreSQL 최신버전
2.2.2 Postgres 수퍼유저 계정 발급 (이미 있으면 건너뜀)
2.2.3 Postgres 수퍼유저로 로긴.
2.2.4 flex 버전을 확인
2.2.5 기존 postgres를 업그레이드 하는 경우
2.2.6 업그레이드를 하려면 기존의 postmaster를 중지
2.2.7 기존의 디렉토리를 백업
2.2.8 설치할 디렉토리를 만듬.
2.2.9 소스파일의 압축을 풀기.
2.2.10 소스코드를 시스템에 맞게 설정
2.2.11 맨 페이지 및 HTML 문서화일 설치
2.2.12 프로그램 컴파일
2.2.13 프로그램 설치
2.2.14 시스템이 공유라이브러리가 필요할때...
2.2.15 환경변수를 설정
2.2.16 데이타 베이스를 초기화
2.2.17 데이타베이스에 접근할 권한을 수정.
2.2.18 command line에서 간단한 테스트
2.2.19 Postgres 수퍼유저 계정 으로 postmaster를 실행.
2.2.20 회귀테스트
2.2.21 백업된 데이타 복구
2.2.22 이전자료 삭제
2.2.23 문서 출력을 하려면..
2.3 Postgres 사용하기
2.4 추가적으로 할 일

3. POSTGRES 시작하기
3.1. 관리자/이용자(Admin / User): 사용자 환경 조정
3.2. 관리자: postmaster (Admin : Postmaster) 시작하기.
3.3. 관리자(Admin): 사용자의 추가및 삭제
3.4. 이용자(User): 응용 프로그램 시작하기.
3.5. 이용자(User): 데이터 베이스 관리하기
3.5.1. 데이터 베이스 작성하기
3.5.2. 데이터 베이스 접근하기
3.5.3. 데이터 베이스 삭제하기

4. Postgres의 명령어들 미리보기 ( PostgreSQL Korea man page참조 )
4.1. cleardbdir.
4.2. createdb.
4.3. createuser.
4.4. destroydb.
4.5. destroyuser.
4.6. ecpg.
4.7. initdb.
4.8. initlocation.
4.9. ipcclean.
4.10. pg_dump.
4.11. pg_dumpall.
4.12. pg_passwd.
4.13. pg_upgrade.
4.14. postgres.
4.15. postmaster.
4.16. psql.
4.17. catalogs.
4.18. libpq.
4.19. pg_hba.conf.
4.20. abort.
4.21. alter_table.
4.22. alter_user.
4.23. begin.
4.24. close.
4.25. cluster.
4.26. commit.
4.27. copy.
4.28. create_aggregate.
4.29. create_database.
4.30. create_function.
4.31. create_index.
4.32. create_language.
4.33. create_operator.
4.34. create_rule.
4.35. create_sequence.
4.36. create_trigger.
4.37. create_type.
4.38. create_user
4.39. create_version.
4.40. create_view.
4.41. declare.
4.42. delete.
4.43. drop.
4.44. drop_aggregate.
4.45. drop_database.
4.46. drop_function.
4.47. drop_index.
4.48. drop_language.
4,49. drop_operator.
4.50. drop_rule.
4.51. drop_sequence.
4.52. drop_table.
4.53. drop_trigger.
4.54. drop_type.
4.55. drop_user.
4.56. drop_view.
4.57. end.
4.58. explain.
4.59. fetch.
4.60. grant.
4.61. insert.
4.62. listen.
4.63. load.
4.64. lock.
4.65. move.
4.66. reset.
4.67. revoke.
4.68. rollback.
4.69. select.
4.70. set.
4.71. show.
4.72. update.
4.73. vacuum.

5. 질의어
5.1. 개념
5.2. 새로운 클래스의 생성
5.3. 클래스에 인스턴스를 삽입하기
5.4. 클래스에 질의하기
5.5. select 결과를 리다이렉트하기
5.6. 클래스간의 결합
5.7. 갱신
5.8. 삭제
5.9. 전체 함수의 이용

6. 진보적인 POSTGRES SQL 의 특징
6.1. 상속
6.2. 시간 여행
6.3. 원자화되지 않은 값
6.3.1. 배열

7. 확장 SQL : 미리보기
7.1. 확장은 어떻게 작동하나
7.2. POSTGRES의 형(type) 시스템
7.3. POSTGRES의 시스템 카탈로그

8. 확장 SQL: 함수
8.1. 질의어 (SQL) 함수
8.1.1. 기본형 SQL 함수
8.1.2. 복합형 SQL 함수
8.2. 프로그래밍 언어 함수
8.2.1. 기본형 프로그래밍 언어 함수
8.2.2. 복합형 프로그래밍 언어 함수
8.2.3. 몇가지 주의사항

본문내용

물론 각각 integer로 mapping되어서)
.int2 PQfsize(PGresult *, int) - 해당 필드의 크기를 반환(변하는 길이의 경우 -1)
.char * PQgetvalue(PGresult *, int, int) - 해당 tuple(두 번째 parameter)의 해당 필드(세 번째 parameter)의 값을 반환한다.
.int PQgetlength(PGresult *, int, int) - 해당 tuple의 해당 필드의 길이를 반환한다.
c프로그램에서 특히 주의해야 할 점은 메모리 관리이다. 특히 남이 만든 library를 쓸 때는 그 만든 사람이 의도한 메모리 관리 방식을 따르지 않는 다면 나중에 크게 문제가 될 수 있다. 이는 이 library에서도 예외가 아니다. 이런 일을 하는 함수는 2개가 있는데, 하나는 PQclear(PGresult *);로 이는 결과값을 읽은 후 이 값이 더 이상 필요가 없을 때 불러야 하는 함수이다. 다음은 PQfinish(PGconn *);으로 이는 더 이상 postgresql과 작업을 할 것이 없을 때 부르는 함수이다.
15. Programming with postgresql in Java
Sun사에서 Java로 database 프로그래밍을 돕기 위해 ODBC의 개념과 유사한 JDBC를 만들었다.(실제로 ODBC driver만 있는 DMS를 위해 ODBC-JDBC-bridge driver도 있다.) 이를 위해 java.sql package가 나오게 되었다.
이에 관련된 자세한 사항들은 http://java.sun.com/products/jdk/1.1/docs/api/Package-java.sql.html 에서 찾아볼 수 있다. 이를 살펴보면 알 수 있는 사실이 대다수의 class들이 interface(즉 abstract class)이며 이를 각 회사에서 제공하는 JDBC driver들이 구현하고 있다는 점이다. postgresql에서는 프로그램 소스에서 /src/interfaces/jdbc/ 디렉토리 안에 JDBC driver를 제공하고 있다.이를 jdk의 CLASSPATH에 넣거나 같은 디렉토리에 두면 된다. (편의를 위해 postgresql.jar, 참고로 이 파일은 순수하게 Java로 되어있다.)
앞에서 c로 프로그램한 것과 차이를 들자면 2가지 정도를 들 수 있다. 먼저 Java가 OOP언어인 점에서 각 함수의 명시적인 parameter(예, PGresult *)가 하나 준다. 둘째로, 앞에서 필드의 이름, 타입 등을 가져오는 함수들이 metadata로 분류되어 있다는 점이다.
15.1. DataBase 접근하기.
먼저 database에 접근하려면, import java.sql.*;를 프로그램 앞에 포함시키고, Class.forName(“postgresql.Driver”)와 같이 JDBC driver를 로딩시킨다. Java에서도 database 프로그래밍을 위한 타입이 있는데, Connection, Statement, ResultSet 등이다. 이중 하나인 Connection을 이용하여,
Connection conn;
conn = DriverManager.getConnection(String url,
String usrname, String passwd);
와 같이 한다. 여기서 url은 localhost인 경우 "jdbc:postgresql:database_name"과 같으면 되고 아닌 경우에는 "jdbc:postgresql://remote_host_address/database_name"과 같으면 된다. 그리고 다음을 위해서
Statement stmt;
stmt = conn.createStatement();
을 하여 미리 Statement를 만들어 둔다.
15.2. SQL 문장 실행하기.
Boolean b = stmt.execute(String SQL_statement);
위와 같이 SQL문장을 실행할 수 있다.(실제로는 execute로 시작하는 함수가 몇 있다.)
15.3. 결과값 읽어내기.
SQL문장을 실행한 후, 문제가 없는 경우 결과를 얻어올 수 있다.
ResultSet rs = stmt.getResultSet();
를 수행하여 우선 ResultSet을 얻은 후, 각 tuples마다 rs.next();를 호출하면 된다.(여러 tuples이 얻어진 경우) 얻어진 데이터에서 우리가 필요한 데이터를 가지고 오기 위해서는 getTYPE(int)나 getTYPE(String)을 사용하면 된다. 여기서 TYPE부분은 실제로 Java의 타입으로 getDouble(), getInt(), getString()과 같은 파일명이 나올 수 있다는 뜻이다. 그리고 int를 parameter로 받는 함수는 필드의 순서(1부터 시작)를 나타내고 String을 parameter로 받는 함수는 필드의 이름을 뜻한다.
이제 앞에서 간단히 말한 metadata에 대해서 알아보자. metadata란 말 그대로 실제 data가 아닌 일종의 가상 data이다. JDBC에서는 DatabaseMetaData와 ResultSetMetaData가 있는데 이는 각각 database와 ResultSet의 자료를 얻을 수 있는 방법을 제공하고 있다. DatabaseMetaData는 DMS에 대한 여러 정보를 가지고 있고, Connection 타입의 getMetaData() method를 통해 얻을 수 있다. ResultSetMetaData는 각 필드들에 대한 정보(타입, 이름 등)를 가지고 있고, ResultSet 타입의 getMetaData() method를 가지고 얻을 수 있다. 실제로 쓸 일이 있을 경우에 한번씩 살펴보면 된다.
15.4. 에러
마지막으로 database 프로그램 도중 발생할 수 있는 Exception을 알아보자. 발생할 수 있는 Exception으로는 2가지가 있는데 우선, ClassNotFoundException은 앞에서 postgresql JDBC driver를 로딩할 때 해당 driver가 없는 경우에 일어난다. 두 번째로, SQLException이 있는데 이는 SQL문장 실행 시 발생할 수 있는 일반 에러이다.
  • 가격3,300
  • 페이지수108페이지
  • 등록일2002.03.04
  • 저작시기2002.03
  • 파일형식한글(hwp)
  • 자료번호#191600
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니