Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-4031

If NO_GENERATED_KEYS is specified, Statement.getGeneratedKeys should return an empty ResultSet, not null

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 10.3.3.0, 10.4.2.0, 10.5.1.1
    • None
    • JDBC
    • Normal
    • Release Note Needed
    • Deviation from standard

    Description

      Currently Derby returns null from Statement.getGeneratedKeys() if the statement is prepared or executed with Statement.NO_GENERATED_KEYS. The javadoc says:

      If this Statement object did not generate any keys, an empty ResultSet object is returned.

      so we should return an empty ResultSet for this case. It is not entirely clear what the structure of the ResultSet and ResultSetMetaData should be. I tend to think the following:

      getConcurrency() - inherit from the parent statement
      getStatement() - null

      ResultSetMetaData
      getColumnCount - 0

      an alternative would be to have the ResultSetMetaData match the signature of Identity_Val_local() but I think to return 0 columns makes more sense.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              kmarsden Katherine Marsden
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated: