]> granicus.if.org Git - postgresql/commitdiff
>Well, if it is that easy, I can do it. Patch attached and applied.
authorBruce Momjian <bruce@momjian.us>
Thu, 6 Sep 2001 20:43:39 +0000 (20:43 +0000)
committerBruce Momjian <bruce@momjian.us>
Thu, 6 Sep 2001 20:43:39 +0000 (20:43 +0000)
>
>> On Mon, 3 Sep 2001 22:01:17 -0500, you wrote:
>>     public boolean isWritable(int column) throws SQLException
>>     {
>>         return !isReadOnly(column);
>>     }

Actually, I think this change has a consequence for this method
in the same class:

    public boolean isDefinitelyWritable(int column)
        throws SQLException
    {
        return isWritable(column);
    }

This is from the JDBC spec
(http://java.sun.com/j2se/1.3/docs/api/java/sql/ResultSetMetaData.html):

  isReadOnly() - Indicates whether the designated column is
definitely not writable.

  isWritable() - Indicates whether it is possible for a write on
the designated column to succeed.

  isDefinitelyWritable() - Indicates whether a write on the
designated column will definitely succeed.

At this time we don't really implement the fine semantics of
these methods. I would suggest the following defaults:

  isReadOnly()             false
  isWritable()             true
  isDefinitelyWritable()   false

And that would mean that your patch is correct, but
isDefinitelyWritable() would need to be patched accordingly:

    public boolean isDefinitelyWritable(int column)
        throws SQLException
    {
        return false;
    }

Again, both in jdbc1 and jdbc2.

Regards,
Ren? Pijlman <rene@lab.applinet.nl>

src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java
src/interfaces/jdbc/org/postgresql/jdbc2/ResultSetMetaData.java

index 73575cbaca544a035d02039a84778a5ad22e8028..73b5b11367bc9a7625f8b29fe20380e916fdaed3 100644 (file)
@@ -434,7 +434,7 @@ public class ResultSetMetaData implements java.sql.ResultSetMetaData
    */
   public boolean isDefinitelyWritable(int column) throws SQLException
   {
-    return isWritable(column);
+    return false;
   }
   
   // ********************************************************
index d1db49c054bdc818a79209f4943a41f25df6a11a..e09b872f49616902c02991da92f27aef74aa47be 100644 (file)
@@ -429,7 +429,7 @@ public class ResultSetMetaData implements java.sql.ResultSetMetaData
    */
   public boolean isDefinitelyWritable(int column) throws SQLException
   {
-    return isWritable(column);
+    return false;
   }
   
   // ********************************************************