Thread: Updated book outline

Updated book outline

From
Bruce Momjian
Date:
OK, new outline, updated to show subsection detail, with suggested
changes made.

--
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
...................................................................

The attached document is in both web page and text formats.
View the one which looks best.


                          PostgreSQL Book Proposal

                               Bruce Momjian

   Preface

   1.
          Introduction
        (a)
               History of POSTGRESQL
             i.
                    UNIVERSITY OF CALIFORNIA AT BERKELEY
             ii.
                    MICHAEL STONEBRAKER
             iii.
                    JOLLY CHEN and ANDREW YU
             iv.
                    POSTGRESQL GLOBAL DEVELOPMENT TEAM
        (b)
               Open source software
             i.
                    development methods
             ii.
                    peer review
             iii.
                    release process
             iv.
                    problem reporting
             v.
                    support
        (c)
               When to use a database
             i.
                    large volume
             ii.
                    rapid retrieval
             iii.
                    frequent modification
             iv.
                    reporting
   2.
          Issuing database commands
        (a)
               Starting a database session
             i.
                    choosing an access method
             ii.
                    choosing a database
             iii.
                    starting a session
        (b)
               Controlling a session
             i.
                    typing in the query buffer
             ii.
                    displaying the query buffer
             iii.
                    editing the query buffer
             iv.
                    erasing the query buffer
        (c)
               Sendinging queries
        (d)
               Getting help
        (e)
               Requesting server information
   3.
          Introduction to SQL
        (a)
               Relational Databases
             i.
                    tables, rows, and columns
             ii.
                    column types
             iii.
                    column selection
             iv.
                    row restriction
        (b)
               Creating tables
             i.
                    naming columns
             ii.
                    column types
        (c)
               Adding data with INSERT
             i.
                    target columns
             ii.
                    column types
             iii.
                    missing values
        (d)
               Viewing data with SELECT
             i.
                    target columns
             ii.
                    FROM clause
        (e)
               Removing data with DELETE
        (f)
               Modifying data with UPDATE
        (g)
               Restricting with WHERE
        (h)
               Sorting data with ORDER BY
        (i)
               Using NULL values
   4.
          Advanced SQL Commands
        (a)
               Inserting data using SELECT
        (b)
               Aggregates: COUNT, SUM, ...
        (c)
               GROUP BY with aggregates
        (d)
               HAVING with aggregates
        (e)
               Joining tables
        (f)
               Using table aliases
        (g)
               UNION clause
        (h)
               UPDATE with FROM
        (i)
               Subqueries
             i.
                    returning a single row
             ii.
                    returning multiple rows
             iii.
                    correlated Subqueries
        (j)
               Transactions
             i.
                    BEGIN...END
             ii.
                    ABORT transaction
        (k)
               Cursors
             i.
                    DECLARE
             ii.
                    FETCH
             iii.
                    CLOSE
        (l)
               Indexing
             i.
                    usage
             ii.
                    types
             iii.
                    definition
             iv.
                    functional indexes
        (m)
               Column defaults
        (n)
               Referential integrity
             i.
                    primary keys
             ii.
                    foreign keys
        (o)
               AND/OR usage
        (p)
               Pattern matching
             i.
                    LIKE clause
             ii.
                    regular expressions
        (q)
               Temporary tables
        (r)
               Importing data
             i.
                    COPY
             ii.
                    DELIMITERS
             iii.
                    BINARY
             iv.
                    frontend COPY
   5.
          POSTGRESQL'S Unique Features
        (a)
               Object ID'S (OID'S)
             i.
                    unique row assignment
             ii.
                    join usage
        (b)
               Multi-Version Concurrency Control
             i.
                    write locks
             ii.
                    read locks
             iii.
                    concurrency
             iv.
                    solutions
        (c)
               Locking and deadlocks
             i.
                    need for locking
             ii.
                    deadlocks
        (d)
               Vacuum
             i.
                    scheduling
             ii.
                    ANALYZE
        (e)
               Views
             i.
                    creation
             ii.
                    limitations
        (f)
               Rules
             i.
                    creation
             ii.
                    limitations
        (g)
               Sequences
             i.
                    purpose
             ii.
                    creation
             iii.
                    management
        (h)
               Triggers
             i.
                    purpose
             ii.
                    creation
        (i)
               Large objects(BLOBS)
             i.
                    applications
             ii.
                    creation
             iii.
                    management
        (j)
               Adding user-defined functions
             i.
                    purpose
             ii.
                    creation
             iii.
                    examples
        (k)
               Adding user-defined operators
             i.
                    arithmetic processing
             ii.
                    creation
        (l)
               Adding user-defined types
             i.
                    purpose
             ii.
                    creation
             iii.
                    indexing
        (m)
               Exotic pre-installed types
             i.
                    date/time
             ii.
                    geometric
             iii.
                    character string
             iv.
                    internet
             v.
                    internal
        (n)
               Arrays
             i.
                    creation
             ii.
                    access
        (o)
               Inheritance
             i.
                    purpose
             ii.
                    creation
             iii.
                    examples
   6.
          Interfacing to the POSTGRESQL Database
        (a)
               C Language API (LIBPQ)
        (b)
               Embedded C (ECPG)
        (c)
               C++ (LIBPQ++)
        (d)
               JAVA (JDBC)
        (e)
               ODBC
        (f)
               PERL (PGSQL_PERL5)
        (g)
               TCL/TK (LIBPGTCL)
        (h)
               PYTHON (PYGRESQL)
        (i)
               Web access (PHP)
        (j)
               Server-side programming
             i.
                    PLPGSQL
             ii.
                    SPI
   7.
          POSTGRESQL Administration
        (a)
               Creating users and databases
        (b)
               Backup and restore
        (c)
               Performance
        (d)
               Troubleshooting
        (e)
               Customization
        (f)
               Access configuration
             i.
                    server access
             ii.
                    database access
             iii.
                    table access
        (g)
               Internationalization
             i.
                    national character encodings
             ii.
                    date formats
   8.
          Additional Resources
        (a)
               Frequently Asked Questions (FAQ'S)
        (b)
               Mailing list support
        (c)
               Supplied documentation
        (d)
               Commercial support
        (e)
               Modifying the source code
   9.
          Appendix: Installation
        (a)
               Getting POSTGRESQL
             i.
                    FTP
             ii.
                    web
             iii.
                    CDROM
        (b)
               Compiling
             i.
                    compiler
             ii.
                    RPM
        (c)
               Initialization
        (d)
               Starting the server
        (e)
               Creating a database
   10.
          Annotated Bibliography

Win32 client...

From
"J. Michael Roberts"
Date:
I know this is probably the wrong group for this, but it's the only one
I'm subscribed to -- where the heck in the build tree is the Win32 client
stuff???  How do I build it?  Or can I use that 6.4.something client in
the bindist on FTP against my spiffy new 6.5.1 Solaris postmaster?

This line of inquiry started out as an innocent attempt to play around,
and here I am back in that learning curve morass.  Sigh.




Re: [HACKERS] Updated book outline

From
Chairudin Sentosa Harjo
Date:
Add a subsection on chapter 1 with title:

(d) PostgreSQL Known Limitation
(i) Maximum record
(ii) Maximum field
(iii) Maximum file size
etc....

Regards
Chairudin


> Bruce Momjian wrote:
> 
> OK, new outline, updated to show subsection detail, with suggested
> changes made.
> 
> 
>                        PostgreSQL Book Proposal
> 
>                              Bruce Momjian
> 
> Preface
> 
> 1.   Introduction
> 
>      (a)  History of POSTGRESQL
> 
>           i.   UNIVERSITY OF CALIFORNIA AT BERKELEY
>           ii.  MICHAEL STONEBRAKER
>           iii.
>                JOLLY CHEN and ANDREW YU
>           iv.  POSTGRESQL GLOBAL DEVELOPMENT TEAM
>      (b)  Open source software
> 
>           i.   development methods
>           ii.  peer review
>           iii.
>                release process
>           iv.  problem reporting
>           v.   support
>      (c)  When to use a database
> 
>           i.   large volume
>           ii.  rapid retrieval
>           iii.
>                frequent modification
>           iv.  reporting


Re: [HACKERS] Updated book outline

From
Bruce Momjian
Date:
> Add a subsection on chapter 1 with title:
> 
> (d) PostgreSQL Known Limitation
> (i) Maximum record
> (ii) Maximum field
> (iii) Maximum file size
> etc....

I will get those in there somewhere.

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026