db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Levitt <de...@mylevita.com>
Subject Re: [patch] [doc] updatable ResultSets
Date Wed, 27 Apr 2005 17:57:07 GMT
Here is a slight modification to Brenda's latest
patch.  It corrects the updateRow() implementation
notes in the table of JDBC 2.0 ResultSet Methods
Supported.  Instead of saying "After the row is
deleted...", it now says "After the row is updated..."

Mamta, is this ready to be committed now?



> saying "After the row
> is deleted", we should say "After the row is
> updated".--- Brenda Reyes <br9395@yahoo.com> wrote:

> Hey Mamta,
> 
> I have made the change you requested.  Ignore the
> patch I posted previously and use this one instead. 
> 
> I am also attaching the html files so you can see
> how
> they look.
> 
> 
> --- Mamta Satoor <msatoor@gmail.com> wrote:
> > Hi Brenda,
> > 
> > The doc looks good. Just one change - in the Table
> > for JDBC 2.0
> > ResultSet Methods Supported, for the method void
> > updateRow(), we need
> > comments similar to the ones for deleteRow. Which
> is
> > as follows
> > void updateRow() After the row is updated, the
> > ResultSet object will
> > be positioned before the next row. Before issuing
> > any methods other
> > than close on the ResultSet object, the program
> will
> > need to
> > reposition the ResultSet object by using the
> next()
> > method.
> > 
> > thanks,
> > Mamta
> > 
> > 
> > > java.sql.ResultSet
> > > Table 1. JDBC 2.0 ResultSet Methods Supported
> > > ReturnsSignatureImplementation Notes
> > > voidafterLast() 
> > > voidbeforeFirst() 
> > > voidbeforeFirst() 
> > > voiddeleteRow()After the row is deleted, the
> > ResultSet object will be positioned before the
> next
> > row. Before issuing any methods other than close
> on
> > the ResultSet object, the program will need to
> > reposition the ResultSet object by using the
> next()
> > method.
> > > booleanfirst() 
> > > BlobgetBlob(int columnIndex)See java.sql.Blob
> and
> > java.sql.Clob
> > > BlobgetBlob(String column-Name)
> > > ClobgetClob(int columnIndex)
> > > ClobgetClob(String column-Name)
> > > intgetConcurrency()
> > > 
> > > If the Statement object has CONCUR_READ_ONLY
> > concurrency, then this method will return
> > ResultSet.CONCUR_READ_ONLY. But if the Statement
> > object has CONCUR_UPDATABLE concurrency, then the
> > return value will depend on whether the underlying
> > language ResultSet is updatable or not. If the
> > language ResultSet is updatable, then
> > getConcurrency() will return
> > ResultSet.CONCUR_UPDATABLE. If the language
> > ResultSet is not updatable, then getConcurrency()
> > will return ResultSet.CONCUR_READ_ONLY.
> > > intgetFetchDirection() 
> > > intgetFetchSize()Always returns 1.
> > > intgetRow() 
> > > booleanisAfterLast() 
> > > booleanisBeforeFirst 
> > > booleanisFirst() 
> > > booleanisLast() 
> > > booleanlast() 
> > > booleanprevious() 
> > > booleanrelative(int rows) 
> > > voidsetFetchDirection(int direction) 
> > > voidsetFetchSize(int rows)A fetch size of 1 is
> the
> > only size supported.
> > > voidupdateRow()
> > 
> 
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam
> protection around 
> http://mail.yahoo.com 
---------------------------------

column-Namecolumn-Name
In many places in the SQL syntax, you can represent
the name ofa column by qualifying it with a table-Name
or correlation-Name. 


In some situations, you cannot qualify a column-Name
witha table-Name or a correlation-Name, but must use a
Simple-column-Name instead.Those situations are:

 
   creating a table (CREATE TABLE statement)
   specifying updatable columns in a cursor
   in a column's correlation name in a SELECT
expression (see SelectExpression)
   in a column's correlation name in a TableExpression
(see TableExpression)
You cannot use correlation-Names for updatable
columns; using correlation-Namesin this way will cause
an SQL exception. For example:
SELECT c11 AS col1, c12 AS col2, c13 FROM t1 FOR
UPDATE of c11,c13
In this example, the correlation-Name col1 FOR c11
isnot permitted because c11 is listed in the FOR
UPDATE listof columns. You can use the
correlation-Name FOR c12 becauseit is not in the FOR
UPDATE list.

Syntax 
[ { table-Name | correlation-Name } . ]
SQL92Identifier

Example 
-- C.Country is a column-Name qualified with a--
correlation-Name.SELECT C.CountryFROM APP.Countries C


Parent topic: SQL identifiers



---------------------------------

correlation-Namecorrelation-Name
A correlation-Name is given to a table expression in
aFROM clause as a new name or alias for that table.
You do not qualify a correlation-Name witha
schema-Name.
You cannot use correlation-Names for updatablecolumns;
using correlation-Names in this way will cause an SQL
exception.For example:
SELECT c11 AS col1, c12 AS col2, c13 FROM t1 FOR
UPDATE of c11,c13
In this example, the correlation-Name col1 FOR c11
isnot permitted because c11 is listed in the FOR
UPDATE listof columns. You can use the
correlation-Name FOR c12 becauseit is not in the FOR
UPDATE list.

Syntax 
SQL92Identifier

Example 
-- C is a correlation-NameSELECT C.NAMEFROM SAMP.STAFF
C


Parent topic: SQL identifiers



---------------------------------

java.sql.ResultSetjava.sql.ResultSetTable 1. JDBC 2.0
ResultSet Methods
SupportedReturnsSignatureImplementation
NotesvoidafterLast() voidbeforeFirst()
voidbeforeFirst() voiddeleteRow()After the row is
deleted, the ResultSet object will bepositioned before
the next row. Before issuing any methods other than
closeon the ResultSet object, the program will need to
reposition the ResultSetobject by using the next()
method.booleanfirst() BlobgetBlob(int columnIndex)See
java.sql.Blob and java.sql.ClobBlobgetBlob(String
column-Name)ClobgetClob(int
columnIndex)ClobgetClob(String
column-Name)intgetConcurrency()
If the Statement object has CONCUR_READ_ONLY
concurrency,then this method will return
ResultSet.CONCUR_READ_ONLY. But if theStatement object
has CONCUR_UPDATABLE concurrency, then the returnvalue
will depend on whether the underlying language
ResultSet is updatableor not. If the language
ResultSet is updatable, then getConcurrency()
willreturn ResultSet.CONCUR_UPDATABLE. If the language
ResultSet is notupdatable, then getConcurrency() will
return ResultSet.CONCUR_READ_ONLY.
intgetFetchDirection() intgetFetchSize()Always returns
1.intgetRow() booleanisAfterLast()
booleanisBeforeFirst booleanisFirst() booleanisLast()
booleanlast() booleanprevious() booleanrelative(int
rows) voidsetFetchDirection(int direction)
voidsetFetchSize(int rows)A fetch size of 1 is the
only size supported.voidupdateRow()After the row is
deleted, the ResultSet object will bepositioned before
the next row. Before issuing any methods other than
closeon the ResultSet object, the program will need to
reposition the ResultSetobject by using the next()
method.
 Note: When working with scrolling insensitive
ResultSets whenauto-commit mode is turned on, the only
positioning method that can closethe ResultSet
automatically is the next() method. When
auto-commitmode is on, this method automatically
closes the ResultSet if it iscalled and there are no
more rows. afterLast() does not close the
ResultSet,for example.
JDBC is not required to have auto-commit off when
using updatableResultSets.

At this moment, Derby doesnot support the insertRow()
method for updatable ResultSets.



Parent topic: JDBC Reference
Mime
View raw message