Developer's Guide
Copyright
About This Document
JDBC Applications and Derby Basics
After Installing
Derby and JVMs
Derby Libraries and Class Path
UNIX-Specific Issues
Configuring File Descriptors
Scripts
Derby Embedded Basics
Embedded Derby JDBC Driver
Embedded Derby JDBC Database Connection URL
Getting a Nested Connection
Starting Derby as an Embedded Database
Deploying Derby Applications
Deployment Issues
Embedded Deployment Application Overview
Deployment Cheat Sheets
Creating Derby Databases for Read-Only Use
Creating and Preparing the Database for Read-Only Use
Deploying the Database on the Read-Only Media
Transferring Read-Only Databases to Archive (Jar or Zip) Files
Accessing a Read-Only Database in a Zip/Jar
Accessing Databases-in-a-Jar in the Class Path
Databases on Read-Only Media and DatabaseMetaData
Loading Classes from a Database
Class Loading Overview
Create Jar Files for Your Application
Add the jar file or files to the database
Enable database class loading with a property
Code your applications the way you normally would
Dynamic Changes to Jar Files or Database Jar Class Path
Derby server-side programming
Programming Database-Side JDBC Procedures
Overview
Database-Side JDBC Procedures and Nested Connections
Database-Side JDBC Procedures Using Non-Nested Connections
Database-Side JDBC Procedures and SQLExceptions
User-Defined SQLExceptions
Programming Trigger Actions
Trigger Action Overview
Performing Referential Actions
Accessing Before and After Rows
Examples
Triggers and Exceptions
Controlling Derby Application Behavior
The JDBC Connection and Transaction Model
Connections
Transactions
SQL and JDBC ResultSet/Cursor Mechanisms
Simple Non-Updatable ResultSets
Updatable Cursors
ResultSets and Auto-Commit
Scrolling Insensitive ResultSets
Holdable Cursors
Locking, Concurrency, and Isolation
Isolation Levels and Concurrency
Configuring Isolation Levels
Lock Granularity
Types and Scope of Locks in Derby Systems
Deadlocks
Working with Multiple Connections to a Single Database
Deployment Options and Threading and Connection Modes
Multi-User Database Access
Multiple Connections from a Single Application
Working with Multiple Threads Sharing a Single Connection
Pitfalls of Sharing a Connection Among Threads
Multi-thread programming tips
Threads Sharing a Statement: A Case Study
Working with Database Threads in an Embedded Environment
Working with Derby SQLExceptions in an Application
Information Provided in SQLExceptions
Using Derby as a J2EE Resource Manager
The Classes Pertaining to Resource Managers
How to Use Them
Getting a DataSource
Shutting Down or Creating a Database
Derby and Security
Security Overview
Features
Configuring Security for Your Environment
Working with User Authentication
Overview
Enabling User Authentication
Defining Users
External Directory Service
Built-in Derby Users
Properties Summary
Programming Applications for Derby User Authentication
Users and Authorization Identifiers
Authorization Identifiers, User Authentication, and User Authorization
User Names and Schemas
Exceptions
User Authorization
Setting User Authorization
About Read-Only and Full Access
Examples
Encrypting Databases on Disk
Overview
Requirements for Derby Encryption
Working with Encryption
Signed Jar Files
Notes on the Derby Security Features
User Authentication and Authorization Examples
Client/Server Environment
Single-User, Embedded Environment
Running Derby under a security manager
Granting Permissions to Derby
Examples of Java 2 Security Policy Files for embedded Derby
Developing Tools and Using Derby with an IDE
Offering Connection Choices to the User
The DriverPropertyInfo Array
Using Derby with IDEs
IDEs and Multiple JVMs
SQL Tips
Retrieving the Database Connection URL
Supplying a Parameter Only Once
Defining an Identity Column
Using Third-Party Tools
Tricks of the VALUES Clause
Multiple Rows
Mapping Column Values to Return Values
Creating Empty Queries
Localizing Derby
SQL Parser Support for Unicode
Derby and Standards
SQL99
Dynamic SQL
Cursors
Information Schema
Transactions
Stored routines and PSM
Calling functions and procedures
Unique constraints and nulls
NOT NULL characteristic
Fewer reserved keywords
DECIMAL max precision
CLOB, and BLOB
Expressions on LONGs
ALTER TABLE
Trademarks
Index
[ Previous Page
Next Page
Table of Contents
Index ]