HACKER SAFE certified sites prevent over 99.9% of hacker crime.

Nikolai Grozni Read the INK Q&A with Nikolai Grozni and save 30% on Turtle Feet: The Making and Unmaking of a Buddhist Monk.

Turtle Feet $17.46
Hardcover Add to Cart



 
JDBC API Tutorial and Reference: Universal Data Access for the Java(tm) 2 Platform

JDBC API Tutorial and Reference: Universal Data Access for the Java(tm) 2 Platform Cover

Synopses & Reviews

Book News Annotation:

Provides a definitive description of the JDBC API, the technology that enables universal data access for the Java programming language. Combines a step-by-step tutorial with a comprehensive reference to all of the classes and interface, and gives in-depth explanations that go beyond the specification. Offers an introduction for those new to the Java programming language and to SQL, then walks through creating a JDBC application, with many examples, and discusses advanced topics. White is a member of the technical staff at Java Software, where he led the design of the JDBC 2.0 API.
Annotation c. Book News, Inc., Portland, OR (booknews.com)

Synopsis:

Lead developer's of Sun's JDBC team introduce all of JDBC 2 in depth, offering detailed explanation of the JDBC and how it relates to Java and relational databases. The authors also explain JDBC's goals, soft- ware framework, and components, including the JDBC driver manager, test suite, and JDBC-ODBC bridge and help readers master hard-to-find, advanced JDBC features, including updates, SQL3 data types, custom mapping, arrays, blobs, callable statements, and the new MetaData API.

Description:

This book provides the definitive description of the JDBC(tm) API, the technology that enables universal data access for the Java(tm) programming language. This new edition has been updated and expanded to cover all of the JDBC 2.0 API, including the JDBC 2.0 core API and the JDBC Standard Extension API, the package that facilitates building server-side applications. Containing in-depth explanations that go beyond the specification, this complete resource pairs a step-by-step tutorial with a comprehensive reference to all of the classes and interfaces. For those new to Java technology, the book includes an introduction to the Java programming language and to SQL. It builds on this basic knowledge to walk you through creating a JDBC application-from setting up a database and establishing a connection to retrieving values from result sets and using prepared statements. In addition, the authors provide many examples along the way that demonstrate how to execute common tasks. The book proceeds to more advanced topics, focusing on the new features of the JDBC 2.0 API, including scrollable and updatable result sets, batch updates, SQL3 data types, custom mapping, and more. You will also find an introduction to working with the JDBC metadata API as well as information on rowsets, the technology that makes it possible to handle data sets from any source such as JavaBeans™ components. From array to XADataSource, a useful alphabetical reference provides concise but complete information on each class and interface in the JDBC API. Each entry includes an overview as well as a list and explanation of the methods and fields. A chapter on mapping SQL types and types in the Java programming language, a summary of the new JDBC 2.0 features, and a glossary complete this indispensable resource for all database programmers.

Table of Contents

Part One 1 Introduction 1.1 What the JDBC 2.0 API Includes 1.2 Conventions Used in This Book 1.2.1 Fonts to Indicate Function 1.2.2 Icons to Indicate New Material 1.2.3 Special Page Designations in the Index 1.2.4 SQLException Is Implied in Method Explanations. 1.2.5 Some Method Explanations Are Combined 1.3 Contents of the Book 1.3.1 Part One 1.3.2 Part Two 1.3.3 Suggested Order for Reading Chapters 1.3.4 Where to Find Information by Topic 1.3.5 Resources on the Web 1.4 What Is the JDBC API? 1.4.1 What Does JDBC Do? 1.4.2 A Base for Other APIs 1.4.3 The JDBC API Versus ODBC and UDA 1.4.4 Two-tier and Three-tier Models 1.4.5 SQL Conformance 1.4.6 JDBC Products 1.4.7 Java Software Framework 1.4.8 JDBC Driver Types 1.4.9 Obtaining JDBC Drivers 1.4.10 Java-relational DBMSs 1.4.11 Other Products 1.5 Java Overview 1.5.1 Java Is Portable 1.5.2 Java Is Object-Oriented 1.5.3 Java Makes It Easy to Write Correct Code 1.5.4 Java Includes a Library of Classes and Interfaces 1.5.5 Java Is Extensible 1.5.6 Java Is Secure 1.5.7 Java Performs Well 1.5.8 Java Scales Well 1.5.9 Java Is Multithreaded 1.6 Relational Database Overview 1.6.1 Integrity Rules 1.6.2 SELECT Statements 1.6.3 WHERE Clauses 1.6.4 Joins 1.6.5 Common SQL Commands 1.6.6 Result Sets and Cursors 1.6.7 Transactions 1.6.8 Stored Procedures 1.6.9 Metadata 2 Basic Tutorial 2.1 Getting Started 2.2 Setting Up a Database 2.3 Establishing a Connection 2.3.1 Loading Drivers 2.3.2 Making the Connection 2.4 Setting Up Tables 2.4.1 Creating a Table 2.4.2 Creating JDBC Statements 2.4.3 Executing Statements 2.4.4 Entering Data into a Table 2.5 Getting Data from a Table 2.6 Retrieving Values from Result Sets 2.6.1 Using the Method next 2.6.2 Using the getXXX Methods 2.6.3 Using the Method getString 2.7 Updating Tables 2.8 Milestone: The Basics of JDBC 2.9 Using Prepared Statements 2.9.1 When to Use a PreparedStatement Object 2.9.2 Creating a PreparedStatement Object 2.9.3 Supplying Values for PreparedStatement Parameters 2.9.4 Using a Loop to Set Values 2.9.5 Return Values for the Method executeUpdate 2.10 Using Joins 2.11 Using Transactions 2.11.1 Disabling Auto-commit Mode 2.11.2 Committing a Transaction 2.11.3 Using Transactions to Preserve Data Integrity 2.11.4 When to Roll Back a Transaction 2.12 Stored Procedures 2.12.1 SQL Statements for Creating a Stored Procedure 2.12.2 Calling a Stored Procedure Using the JDBC API 2.13 Creating Complete JDBC Applications 2.13.1 Putting Code in a Class Definition 2.13.2 Importing Classes to Make Them Visible 2.13.3 Using the main Method 2.13.4 Using try and catch Blocks 2.13.5 Retrieving Exceptions 2.13.6 Retrieving Warnings 2.14 Running the Sample Applications 2.15 Sample Code 2.15.1 Sample Code 1 and 2 2.15.2 Sample Code 3 and 4 2.15.3 Sample Code 5 2.15.4 Sample Code 6 2.16 Creating an Applet from an Application 2.16.1 Writing Applet Code 2.16.2 Running an Applet 2.16.3 Sample Code 7 and 8 2.16.4 Writing Stored Procedures Using SQLJ 3 Advanced Tutorial 3.1 Getting Set Up to Use the JDBC 2.0 API 3.1.1 Using Code Examples 3.2 Moving the Cursor in Scrollable Result Sets 3.2.1 Creating a Scrollable Result Set 3.2.2 Moving the Cursor Forward and Backward 3.2.3 Moving the Cursor to a Designated Row 3.2.4 Getting the Cursor Position 3.3 Making Updates to Updatable Result Sets 3.3.1 Creating an Updatable Result Set 3.3.2 Updating a Result Set Programmatically 3.3.3 Inserting and Deleting Rows Programmatically 3.3.4 Code Sample for Inserting a Row 3.3.5 Deleting a Row Programmatically 3.3.6 Seeing Changes in Result Sets 3.3.7 Getting the Most Recent Data 3.4 Making Batch Updates 3.4.1 Using Statement Objects for Batch Updates. 3.4.2 Batch Update Exceptions 3.4.3 Sample Code for Batch Update 3.5 SQL3 Data Types 3.5.1 DISTINCT Type 3.5.2 Using SQL3 Data Types 3.5.3 Blob, Clob, and Array Objects 3.5.4 Creating an SQL Structured Type 3.5.5 Creating a DISTINCT Type 3.5.6 Using References to Structured Types 3.5.7 Sample Code for Creating an SQL REF 3.5.8 Using SQL3 Types as Column Values 3.5.9 Inserting SQL3 Types into a Table 3.6 Using Custom Mapping 3.6.1 Implementing SQLData 3.6.2 Using a ConnectionÍs Type Map 3.6.3 Using Your Own Type Map 3.7 Using Data Sources 3.7.1 Using a DataSource Object to Get a Connection. 3.7.2 Deploying a Basic DataSource Object 3.7.3 Deploying Other DataSource Implementations 3.7.4 Getting and Using a Pooled Connection 3.7.5 Deployment for Distributed Transactions 3.7.6 Using Connections for Distributed Transactions. 4 MetaData Tutorial 4.1 Getting Information about Result Set Columns 4.1.1 Using the Method getColumnCount 4.1.2 Sample Code 9 4.1.3 Using Other ResultSetMetaData Methods 4.1.4 Getting Column Type Information 4.1.5 Sample Code 10 and 11 4.1.6 Sample Code 12 4.1.7 Getting Other Information 4.1.8 Using New JDBC 2.0 ResultSetMetaData Features 4.1.9 Getting Other Information about a Result Set 4.2 Getting Information about a Database or Database System 4.2.1 Categories of DatabaseMetaData Methods 4.2.2 Methods that Return a String 4.2.3 Methods that Return an int 4.2.4 Methods that Return a boolean 4.2.5 Methods that Return a ResultSet Object 4.2.6 Sample Code 13 4.2.7 Getting Information about DBMS Data Types 4.2.8 Sample Code 14 4.2.9 Getting Information about Primary and Foreign Keys 4.2.10 Sample Code 15 4.2.11 Sample Code 16 4.2.12 New JDBC 2.0 Core Methods 4.3 Generic Applications 4.3.1 Sample Code 17 and 18 4.3.2 Sample Code 19 5 Rowset Tutorial 5.1 Types and Uses of Rowsets 5.2 Using a Rowset 5.2.1 Creating a Rowset and Setting Properties 5.2.2 Rowsets and Event Notification 5.2.3 Obtaining a Scrollable and Updatable Rowset 5.2.4 Using a Rowset for Scrolling and Updating 5.2.5 Updating a Rowset 5.3 An EJB Example 5.3.1 A Distributed Application 5.3.2 Differences in Rowsets 5.3.3 EJB and Distributed Transactions 5.3.4 A Stateless SessionBean Object 5.3.5 Overview of an EJB Application 5.3.6 The Remote Interface 5.3.7 The Home Interface 5.3.8 The Client Class 5.3.9 The Enterprise Bean Part Two 6 Array 6.1 Array Overview 6.1.1 Creating an Array Object 6.1.2 Getting Base Type Information 6.1.3 Materializing Array Data 6.1.4 Four Versions of the Method getArray 6.1.5 Four Versions of the Method getResultSet 6.1.6 Using Array Methods 6.1.7 Storing Array Objects 6.2 Array Interface Definition 6.3 Array Methods 7 BatchUpdateException 7.1 BatchUpdateException Overview 7.1.1 What a BatchUpdateException Object Contains. 7.1.2 Retrieving BatchUpdateException Information 7.2 BatchUpdateException Class Definition 7.3 BatchUpdateException Constructors 7.4 BatchUpdateException Methods 7.4.1 Inherited Methods 7.4.2 Methods Defined in BatchUpdateException 8 Blob 8.1 Blob Overview 8.1.1 Creating a Blob Object 8.1.2 Materializing Blob Data 8.1.3 Storing a Blob Object 8.2 Blob Interface Definition 8.3 Blob Methods 9 CallableStatement 9.1 CallableStatement Overview 9.1.1 Creating a CallableStatement Object 9.1.2 IN Parameters 9.1.3 Making Batch Updates 9.1.4 OUT Parameters 9.1.5 Numbering of Parameters 9.1.6 INOUT Parameters 9.1.7 Retrieve OUT Parameters after Results 9.1.8 Retrieving NULL Values as OUT Parameters 9.2 CallableStatement Definition 9.3 CallableStatement Methods 9.3.1 Inherited Methods 9.3.2 Methods Defined in CallableStatement 10 Clob 10.1 Clob Overview 10.1.1 Creating a Clob Object 10.1.2 Materializing Clob Data 10.1.3 Storing a Clob Object 10.2 Clob Interface Definition 10.3 Clob Methods 11 Connection 11.1 Connection Overview 11.1.1 Opening a Connection 11.1.2 URLs in General Use 11.1.3 JDBC URLs 11.1.4 The odbc Subprotocol 11.1.5 Registering Subprotocols 11.1.6 Sending SQL Statements 11.1.7 Transactions 11.1.8 Transaction Isolation Levels 11.1.9 Freeing DBMS Resources 11.1.10 Using Type Maps 11.2 Connection Interface Definition 11.3 Connection Methods 11.4 Connection Fields 12 ConnectionEvent 12.1 ConnectionEvent Overview 12.2 ConnectionEvent Definition 12.3 ConnectionEvent Constructors 12.4 ConnectionEvent Methods 12.4.1 Methods Inherited from java.util.EventObject 12.4.2 Methods Defined in javax.sql.ConnectionEvent 13 ConnectionEventListener 13.1 ConnectionEventListener Overview 13.1.1 Registering a ConnectionEventListener Object 13.2 ConnectionEventListener Definition 13.3 ConnectionEventListener Methods 14 ConnectionPoolDataSource 14.1 ConnectionPoolDataSource Overview 14.1.1 Connection vs. PooledConnection Objects 14.2 ConnectionPoolDataSource Definition 14.3 ConnectionPoolDataSource Methods 15 DatabaseMetaData 15.1 DatabaseMetaData Overview 15.1.1 Creating a DatabaseMetaData Object 15.1.2 ResultSet Objects as Return Values 15.1.3 String Patterns as Arguments 15.1.4 Pseudo Columns 15.1.5 New JDBC 2.0 Core API Features 15.1.6 Getting Advanced Type Information 15.2 DatabaseMetaData Interface Definition 15.3 DatabaseMetaData Methods 15.4 DatabaseMetaData Fields 16 DataSource 16.1 DataSource Overview 16.1.1 Properties 16.1.2 Using JNDI 16.1.3 Creating and Registering a DataSource Object 16.1.4 Connecting to a Data Source 16.1.5 DataSource Implementations 16.1.6 Logging and Tracing 16.1.7 Advantages of Using JNDI 16.2 DataSource Definition 16.3 DataSource Methods 17 DataTruncation 17.1 DataTruncation Overview 17.1.1 Data Truncation with No Warning or Exception. 17.1.2 Data Truncation on Reads 17.1.3 Data Truncation on Writes 17.1.4 What a DataTruncation Object Contains 17.1.5 Retrieving DataTruncation Information 17.2 DataTruncation Class Definition 17.3 DataTruncation Constructor 17.4 DataTruncation Methods 17.4.1 Inherited Methods 17.4.2 Methods Defined in DataTruncation 18 Date 18.1 Date Overview 18.1.1 Creating a Date Object 18.1.2 Deprecated Methods 18.1.3 Retrieving a Date Object 18.1.4 Advanced Features 18.2 Date Class Definition 18.3 Date Constructors 18.4 Date Methods 19 Distinct Types 19.1 Distinct Types Overview 19.1.1 Creating a Distinct Type Object 19.1.2 Storing Distinct Objects 19.1.3 Using Distinct Data Types 19.1.4 Custom Mapping of Distinct Types 20 Driver 20.1 Driver Overview 20.1.1 Loading and Registering a Driver 20.1.2 JDBC Implementation Alternatives 20.2 Driver Interface Definition 20.3 Driver Methods 21 DriverManager 21.1 DriverManager Overview 21.1.1 Keeping Track of Available Drivers 21.1.2 Establishing a Connection 21.1.3 DriverManager Methods Are Static 21.2 DriverManager Class Definition 21.3 DriverManager Methods 22 DriverPropertyInfo 22.1 DriverPropertyInfo Overview 22.1.1 Creating a DriverPropertyInfo Object 22.2 DriverPropertyInfo Class Definition 22.3 DriverPropertyInfo Constructor 22.4 DriverPropertyInfo Fields 23 PooledConnection 23.1 PooledConnection Overview 23.1.1 Application Code for Connection Pooling 23.1.2 How Connection Pooling Works 23.1.3 The Life Cycle of a PooledConnection Object 23.2 PooledConnection Definition 23.3 PooledConnection Methods 24 PreparedStatement 24.1 PreparedStatement Overview 24.1.1 Creating PreparedStatement Objects 24.1.2 Passing IN Parameters 24.1.3 Data Type Conformance on IN Parameters 24.1.4 Using setObject 24.1.5 Sending JDBC NULL as an IN parameter 24.1.6 Sending Very Large IN Parameters 24.1.7 Using PreparedStatement Objects in Batch Updates 24.2 PreparedStatement Interface Definition 24.3 PreparedStatement Methods 24.3.1 Methods Inherited from Statement 24.3.2 Methods Defined in PreparedStatement 25 Ref 25.1 Ref Overview 25.1.1 Creating an SQL Reference 25.1.2 Creating a Ref Object 25.1.3 Storing a Ref Object 25.1.4 Dereferencing a Ref Object 25.2 Ref Interface Definition 25.3 Ref Methods 26 ResultSet 26.1 ResultSet Overview 26.1.1 Rows and Columns 26.1.2 Cursors 26.1.3 Cursor Movement Examples 26.1.4 Determining the Number of Rows in a Result Set. 26.1.5 Retrieving Column Values 26.1.6 Which getXXX Method to Use 26.1.7 Types of Result Sets 26.1.8 Concurrency Types 26.1.9 Providing Performance Hints 26.1.10 Creating Different Types of Result Sets 26.1.11 Using a Prepared Statement to Create Result Sets. 26.1.12 Requesting Features That Are Not Supported 26.1.13 Using updateXXX Methods 26.1.14 Deleting a Row 26.1.15 Inserting Rows 26.1.16 Positioned Updates 26.1.17 Queries That Produce Updatable Result Sets 26.1.18 What Is Visible to Transactions 26.1.19 Visibility of Changes Made by Others 26.1.20 Visibility of a Result SetÍs Own Changes 26.1.21 Detecting Changes 26.1.22 Refetching a Row 26.1.23 Using Streams for Very Large Row Values 26.1.24 NULL Result Values 26.1.25 Optional or Multiple Result Sets 26.1.26 Closing a ResultSet Object 26.1.27 JDBC Compliance 26.2 ResultSet Interface Definition 26.3 ResultSet Methods 26.4 ResultSet Fields 27 ResultSetMetaData 27.1 ResultSetMetaData Overview 27.1.1 Creating a ResultSetMetaData Object 27.1.2 Using ResultSetMetaData 27.2 ResultSetMetaData Interface Definition 27.3 ResultSetMetaData Methods 27.4 ResultSetMetaData Fields 28 RowSet 28.1 RowSet Overview 28.1.1 The Event Model for Rowsets 28.1.2 Properties for a Rowset 28.1.3 Setting Parameters 28.1.4 Traversing a RowSet Object 28.1.5 Executing a Command 28.1.6 Using a RowSet ObjectÍs Metadata 28.2 An Example Implementation 28.2.1 Overview of CachedRowSet 28.2.2 Uses for a CachedRowSet Object 28.2.3 Sample CachedRowSet Definition 28.2.4 Creating a CachedRowSet Object 28.2.5 Populating a CachedRowSet Object 28.2.6 Accessing Data 28.2.7 Modifying Data 28.2.8 Customizing Readers and Writers 28.2.9 Other Methods 28.3 Other Possible Implementations 28.3.1 JDBCRowSet Class 28.3.2 The WebRowSet Class 28.4 RowSet Definition 28.5 RowSet Methods 28.5.1 Methods Inherited from ResultSet 28.5.2 Methods Defined in RowSet 28.6 RowSet Fields 29 RowSetEvent 29.1 RowSetEvent Overview 29.1.1 RowSet Events 29.1.2 Creating a RowSetEvent Object 29.2 RowSetEvent Definition 29.3 RowSetEvent Constructor 29.4 RowSetEvent Methods 29.4.1 Inherited Methods 30 RowSetInternal 30.1 RowSetInternal Overview 30.2 RowSetInternal Definition 30.3 RowSetInternal Methods 31 RowSetListener 31.1 RowSetListener Overview 31.1.1 Registering and Deregistering a Listener 31.1.2 Using RowSetListener Methods 31.2 RowSetListener Definition 31.3 RowSetListener Methods 32 RowSetMetaData 32.1 RowSetMetaData Overview 32.2 RowSetMetaData Definition 32.3 RowSetMetaData Methods 32.3.1 Methods Inherited from ResultSetMetaData. 32.3.2 Methods Defined in RowSetMetaData 32.4 RowSetMetaData Fields 33 RowSetReader 33.1 RowSetReader Overview 33.1.1 The Reader/Writer Framework 33.1.2 Reading Data for a Disconnected Rowset 33.2 RowSetReader Definition 33.3 RowSetReader Methods 34 RowSetWriter 34.1 RowSetWriter Overview 34.2 RowSetWriter Definition 34.3 RowSetWriter Methods 35 SQLData 35.1 SQLData Overview 35.1.1 Creating a Custom Mapping 35.1.2 How SQLData Retrieves an Object 35.1.3 How SQLData Is Used to Store an Object 35.2 SQLData Interface Definition 35.3 SQLData Methods 36 SQLException 36.1 SQLException Overview 36.1.1 What an SQLException Object Contains 36.1.2 Retrieving SQLException Information 36.1.3 What an SQLException Means 36.2 SQLException Class Definition 36.3 SQLException Constructors 36.4 SQLException Methods 36.4.1 Inherited Methods 36.4.2 Methods Defined in SQLException 37 SQLInput 37.1 SQLInput Overview 37.1.1 Creating an SQLInput Object 37.1.2 Using readXXX Methods 37.2 SQLInput Interface Definition 37.3 SQLInput Methods 38 SQLOutput 38.1 SQLOutput Overview 38.2 SQLOutput Interface Definition 38.3 SQLOutput Methods 39 SQLWarning 39.1 SQLWarning Overview 39.1.1 What an SQLWarning Object Contains 39.1.2 Retrieving SQLWarning Information 39.2 SQLWarning Class Definition 39.3 SQLWarning Constructors 39.4 SQLWarning Methods 39.4.1 Inherited Methods 39.4.2 Methods Defined in SQLWarning 40 Statement 40.1 Statement Overview 40.1.1 Creating Statement Objects 40.1.2 Executing Statements Using Statement Objects 40.1.3 Statement Completion 40.1.4 Closing Statements 40.1.5 SQL Escape Syntax in Statements 40.1.6 Sending Batch Updates 40.1.7 Giving Performance Hints 40.1.8 Executing Special Kinds of Statements 40.2 Statement Interface Definition 40.3 Statement Methods 41 Struct 41.1 Struct Overview 41.1.1 Creating an SQL Structured Type 41.1.2 Storing Referenceable Instances of a Structured Type 41.1.3 Creating a Struct Object 41.1.4 Mapping SQL Inheritance 41.1.5 Ordering of Attributes 41.1.6 Storing a Struct Object 41.2 Struct Interface Definition 41.3 Struct Methods 42 Time 42.1 Time Overview 42.1.1 Creating a Time Object 42.1.2 Deprecated Methods 42.1.3 Retrieving a Time Object 42.1.4 Advanced Features 42.2 Time Class Definition 42.3 Time Constructors 42.4 Time Methods 43 Timestamp 43.1 Timestamp Overview 43.1.1 Creating a Timestamp Object 43.1.2 Retrieving a Timestamp Object 43.1.3 Advanced Features 43.2 Timestamp Class Definition 43.3 Timestamp Constructors 43.4 Timestamp Methods 44 Types 44.1 Overview of Class Types 44.1.1 Using the Constants in Class Types 44.1.2 Using the Constant OTHER 44.1.3 JDBC Types Added in the JDBC 2.0 Core API 44.2 Types Class Definition 45 XAConnection 45.1 XAConnection Overview 45.1.1 Application Code in Distributed Transactions. 45.1.2 Distributed Transaction Requirements 45.1.3 Creating an XAConnection Object 45.1.4 What an XAResource Object Does 45.1.5 How the Two-phase Commit Protocol Works. 45.1.6 Using an XAResource Object to Commit 45.1.7 The XAResource Interface 45.1.8 Steps in a Distributed Transaction 45.1.9 Distributed Transactions and EJB 45.2 XAConnection Definition 45.3 XAConnection Methods 45.3.1 Methods Inherited from javax.sql.PooledConnection 45.3.2 Methods Defined in XAConnection 46 XADataSource 46.1 XADataSource Overview 46.1.1 Obtaining an XADataSource Object 46.1.2 XADataSource Objects and Resource Managers 46.2 XADataSource Definition 46.3 XADataSource Methods 47 Mapping SQL and Java Types 47.1 Mapping Overview 47.2 Mapping SQL Types to Java Types 47.3 Basic JDBC Types 47.3.1 CHAR, VARCHAR, LONGVARCHAR 47.3.2 BINARY, VARBINARY, LONGVARBINARY 47.3.3 BIT 47.3.4 TINYINT 47.3.5 SMALLINT 47.3.6 INTEGER 47.3.7 BIGINT 47.3.8 REAL 47.3.9 DOUBLE 47.3.10 FLOAT 47.3.11 DECIMAL and NUMERIC 47.3.12 DATE, TIME, and TIMESTAMP 47.4 Advanced JDBC Data Types 47.4.1 BLOB 47.4.2 CLOB 47.4.3 ARRAY 47.4.4 DISTINCT 47.4.5 STRUCT 47.4.6 REF 47.4.7 JAVA_OBJECT 47.5 Examples of Mapping 47.5.1 Simple SQL Statement 47.5.2 SQL Statement with IN Parameters 47.5.3 SQL Statement with INOUT Parameters 47.6 Custom Mapping 47.7 Dynamic Data Access 47.8 Storing Java Objects in a Database 47.9 Tables for Type Mapping 47.9.1 JDBC Types Mapped to Java Types 47.9.2 Java Types Mapped to JDBC Types 47.9.3 JDBC Types Mapped to Java Object Types 47.9.4 Java Object Types Mapped to JDBC Types 47.9.5 Conversions by setObject 47.9.6 Conversions by ResultSet.getXXX Methods. 47.9.7 Types Mapped to Database-specific SQL Types. Appendix A: For Driver Writers 935 A.1 Requirements for All Drivers A.1.1 Implement Methods in the Interfaces A.1.2 Implement a Static Initializer A.1.3 Support Extensions to SQL?92 Entry Level A.1.4 Support Scalar Functions A.1.5 Provide Locks for Positioned Updates and Deletes A.1.6 Support Multithreading A.1.7 Throw Exceptions for Truncated Input Parameters A.1.8 Use Default Behaviors for SQL3 Data Types A.2 Permitted Variants A.2.1 When Functionality Is Not Supported A.2.2 Variation in Fundamental Properties A.2.3 Adding Functionality A.3 Security Responsibilities of Drivers A.3.1 Check Shared TCP Connections A.3.2 Check All Local File Access A.3.3 Assume the Worst A.4 Use SQLException for Exceptions A.5 Suggested Implementations A.5.1 Prefetch Rows A.5.2 Provide ñFinalizeî Methods for Applets A.5.3 Avoid Implementation-dependent States Appendix B: Summary of Changes 951 B.1 Overview of JDBC 2.0 Core API Changes B.2 Summary of New Functionality B.2.1 Scrollable Result Sets B.2.2 Batch Updates B.2.3 Programmatic Updates B.2.4 Other New Features B.3 Support for Advanced Data Types B.3.1 What Are the SQL3 Data Types? B.3.2 Summary of Support for the SQL3 Data Types B.3.3 Mapping of the New SQL3 Types B.3.4 SQL Locators B.3.5 Support for Storing Java Objects B.4 Complete List of Core API Changes B.4.1 What Did Not Change B.4.2 Additions to Existing Interfaces and Classes. B.4.3 Deprecated Methods and Constructors B.4.4 New Interfaces, Classes, and Exceptions B.5 JDBC Standard Extension Features B.5.1 JNDI B.5.2 Connection Pooling B.5.3 Support for Distributed Transactions B.5.4 Rowsets B.6 Complete List of Extension API B.7 Post JDBC 1.0 API Changes B.7.1 Numeric to Bignum to BigDecimal B.7.2 AutoClose Mode Dropped B.8 Early Design Decisions B.8.1 ResultSet.getXXX Methods B.8.2 PreparedStatement.setXXX Methods B.8.3 CallableStatement.registerOutParameter Method B.8.4 Support for Large OUT Parameters B.8.5 isNull versus wasNull B.8.6 Java Type Names or JDBC Type Names B.9 Where to Send Suggestions Glossary Index

Product Details

ISBN:
9780201433289
Subtitle:
Universal Data Access for the Java(tm) 2 Platform
Author:
White, Seth
Author:
Hapner, Mark
Author:
Cattell, Rick
Publisher:
Addison-Wesley Professional
Location:
Reading, MA :
Subject:
Database Management - General
Subject:
Database management
Subject:
Java (Computer program language)
Subject:
Internet programming
Subject:
Programming Languages - Java
Subject:
Java
Edition Number:
2
Series:
Java Series
Series Volume:
MF-773-N
Publication Date:
June 1999
Binding:
Paperback
Language:
English
Illustrations:
Yes
Pages:
1088
Dimensions:
9.22x7.40x1.95 in. 3.51 lbs.