舉報

會員
PostgreSQL Server Programming(Second Edition)
最新章節:
Index
ThisbookisformoderatetoadvancedPostgreSQLdatabaseprofessionalswhowishtoextendPostgreSQL,utilizingthemostupdatedfeaturesofPostgreSQL9.4.Forabetterunderstandingofthisbook,familiaritywithwritingSQL,abasicideaofquerytuning,andsomecodingexperienceinyourpreferredlanguageisexpected.
最新章節
- Index
- Summary
- Using foreign data wrappers
- Creating user-defined aggregates
- Creating index access methods
- Creating a new operator
品牌:中圖公司
上架時間:2021-07-23 19:10:35
出版社:Packt Publishing
本書數字版權由中圖公司提供,并由其授權上海閱文信息技術有限公司制作發行
- Index 更新時間:2021-07-23 20:37:08
- Summary
- Using foreign data wrappers
- Creating user-defined aggregates
- Creating index access methods
- Creating a new operator
- What can't be extended?
- Chapter 14. PostgreSQL as an Extensible RDBMS
- Summary
- Installing an extension from PGXN
- Publishing your extension
- Viewing extensions
- Installing an extension
- Building an extension
- The .control file
- Extension versions
- Unpackaged extensions
- When to create an extension
- Chapter 13. Publishing Your Code as PostgreSQL Extensions
- Summary
- Untrusted Tcl
- Writing PL/Tcl triggers
- Accessing databases
- Passing composite-type arguments
- Passing and returning arrays
- A simple PL/Tcl function
- Installing PL/Tcl
- Chapter 12. PL/Tcl – Tcl Procedural Language
- Summary
- Untrusted Perl
- Writing PL/Perl triggers
- Passing and returning non-scalar types
- A simple PL/Perl function
- Installing PL/Perl
- When to use PL/Perl
- Chapter 11. PL/Perl – Perl Procedural Language
- Summary
- Connection Pooling
- Dealing with success – splitting tables over multiple databases
- Creating a simple single-server chat
- Chapter 10. Scaling Your Database with PL/Proxy
- Summary
- Additional resources for C
- Writing functions in C++
- Synchronizing between backends
- Doing something at commit/rollback
- Fast capturing of database changes
- Handling records as arguments or returned values
- Running queries and calling PostgreSQL functions
- Error reporting from C functions
- Basic guidelines for writing C code
- Adding functionality to add(int int)
- The simplest C function – return (a + b)
- Chapter 9. Writing Advanced Functions in C
- Summary
- Thinking out of the "SQL database server" box
- Quick introduction to PL/Python
- Why untrusted?
- Will untrusted languages corrupt the database?
- Can you use untrusted languages for important functions?
- Are untrusted languages inferior to trusted ones?
- Chapter 8. Using Unrestricted Languages
- Summary
- Visual debugging
- Manual debugging with RAISE NOTICE
- Chapter 7. Debugging PL/pgSQL
- Summary
- A roadmap of event triggers
- Preventing schema changes
- Creating an audit trail
- Creating event triggers
- Use cases for creating event triggers
- Chapter 6. PostgreSQL Event Triggers
- Summary
- Variables passed to the PL/pgSQL TRIGGER function
- Visibility
- Controlling when a trigger is called
- The immutable fields trigger
- Modifying the NEW record
- Disallowing TRUNCATE
- Disallowing DELETE
- The audit trigger
- Working on a simple "Hey I'm called" trigger
- Creating the trigger function
- Chapter 5. PL/pgSQL Trigger Functions
- Summary
- Other ways to work with structured data
- Returning cursors
- A summary of the RETURN SETOF variants
- OUT parameters and records
- Functions based on views
- Using a set returning function
- Returning sets
- Sets and arrays
- Chapter 4. Returning Structured Data
- Summary
- Acting on the function's results
- Returning a record
- Conditional expressions
- The structure of a PL/pgSQL function
- Why PL/pgSQL?
- Chapter 3. Your First PL/pgSQL Function
- Summary
- Procedural languages
- Community
- Predictability
- Licensing
- Availability of developers
- Cost of acquisition
- Chapter 2. Server Programming Environments
- Summary
- Wrapping up – why program in the server?
- Caching
- Programming best practices
- Custom sort orders
- Data cleaning
- Auditing changes
- Managing related data with triggers
- Moving beyond simple functions
- About this book's code examples
- Why program in the server?
- Chapter 1. What Is a PostgreSQL Server?
- Customer support
- Reader feedback
- Conventions
- Who this book is for
- What you need for this book
- What this book covers
- Preface
- Support files eBooks discount offers and more
- www.PacktPub.com
- About the Reviewers
- About the Authors
- Credits
- PostgreSQL Server Programming Second Edition
- coverpage
- coverpage
- PostgreSQL Server Programming Second Edition
- Credits
- About the Authors
- About the Reviewers
- www.PacktPub.com
- Support files eBooks discount offers and more
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Chapter 1. What Is a PostgreSQL Server?
- Why program in the server?
- About this book's code examples
- Moving beyond simple functions
- Managing related data with triggers
- Auditing changes
- Data cleaning
- Custom sort orders
- Programming best practices
- Caching
- Wrapping up – why program in the server?
- Summary
- Chapter 2. Server Programming Environments
- Cost of acquisition
- Availability of developers
- Licensing
- Predictability
- Community
- Procedural languages
- Summary
- Chapter 3. Your First PL/pgSQL Function
- Why PL/pgSQL?
- The structure of a PL/pgSQL function
- Conditional expressions
- Returning a record
- Acting on the function's results
- Summary
- Chapter 4. Returning Structured Data
- Sets and arrays
- Returning sets
- Using a set returning function
- Functions based on views
- OUT parameters and records
- A summary of the RETURN SETOF variants
- Returning cursors
- Other ways to work with structured data
- Summary
- Chapter 5. PL/pgSQL Trigger Functions
- Creating the trigger function
- Working on a simple "Hey I'm called" trigger
- The audit trigger
- Disallowing DELETE
- Disallowing TRUNCATE
- Modifying the NEW record
- The immutable fields trigger
- Controlling when a trigger is called
- Visibility
- Variables passed to the PL/pgSQL TRIGGER function
- Summary
- Chapter 6. PostgreSQL Event Triggers
- Use cases for creating event triggers
- Creating event triggers
- Creating an audit trail
- Preventing schema changes
- A roadmap of event triggers
- Summary
- Chapter 7. Debugging PL/pgSQL
- Manual debugging with RAISE NOTICE
- Visual debugging
- Summary
- Chapter 8. Using Unrestricted Languages
- Are untrusted languages inferior to trusted ones?
- Can you use untrusted languages for important functions?
- Will untrusted languages corrupt the database?
- Why untrusted?
- Quick introduction to PL/Python
- Thinking out of the "SQL database server" box
- Summary
- Chapter 9. Writing Advanced Functions in C
- The simplest C function – return (a + b)
- Adding functionality to add(int int)
- Basic guidelines for writing C code
- Error reporting from C functions
- Running queries and calling PostgreSQL functions
- Handling records as arguments or returned values
- Fast capturing of database changes
- Doing something at commit/rollback
- Synchronizing between backends
- Writing functions in C++
- Additional resources for C
- Summary
- Chapter 10. Scaling Your Database with PL/Proxy
- Creating a simple single-server chat
- Dealing with success – splitting tables over multiple databases
- Connection Pooling
- Summary
- Chapter 11. PL/Perl – Perl Procedural Language
- When to use PL/Perl
- Installing PL/Perl
- A simple PL/Perl function
- Passing and returning non-scalar types
- Writing PL/Perl triggers
- Untrusted Perl
- Summary
- Chapter 12. PL/Tcl – Tcl Procedural Language
- Installing PL/Tcl
- A simple PL/Tcl function
- Passing and returning arrays
- Passing composite-type arguments
- Accessing databases
- Writing PL/Tcl triggers
- Untrusted Tcl
- Summary
- Chapter 13. Publishing Your Code as PostgreSQL Extensions
- When to create an extension
- Unpackaged extensions
- Extension versions
- The .control file
- Building an extension
- Installing an extension
- Viewing extensions
- Publishing your extension
- Installing an extension from PGXN
- Summary
- Chapter 14. PostgreSQL as an Extensible RDBMS
- What can't be extended?
- Creating a new operator
- Creating index access methods
- Creating user-defined aggregates
- Using foreign data wrappers
- Summary
- Index 更新時間:2021-07-23 20:37:08