<html>
    <head>
      <base href="https://bugs.documentfoundation.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Firebird: empty columns gone with prepared statement"
   href="https://bugs.documentfoundation.org/show_bug.cgi?id=116890#c15">Comment # 15</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Firebird: empty columns gone with prepared statement"
   href="https://bugs.documentfoundation.org/show_bug.cgi?id=116890">bug 116890</a>
              from <span class="vcard"><a class="email" href="mailto:lionel@mamane.lu" title="Lionel Elie Mamane <lionel@mamane.lu>"> <span class="fn">Lionel Elie Mamane</span></a>
</span></b>
        <pre>(In reply to Gerhard Schaber from <a href="show_bug.cgi?id=116890#c14">comment #14</a>)

<span class="quote">> getColumnName returns the original name according to the manual.</span >

It does not make much sense to me, but it seems you are right. A very clear
source is
<a href="https://stackoverflow.com/questions/4271152/getcolumnlabel-vs-getcolumnname">https://stackoverflow.com/questions/4271152/getcolumnlabel-vs-getcolumnname</a>

That is how the MySQL C++ connector does it. However, it still keeps unique
column names by appending "1", "2", etc when the same column is taken twice.
E.g. "colName", then "colName1", "colName2", etc. It uses an empty name for the
first computed column, then "1", "2", etc.

The MySQL JDBC also returns the original name. Computed columns have the same
string (the alias) in getColumnName() and getColumnLabel(). It lets duplicate
names for different result columns, though. However,
recordset.columns.ElementNames has "1", "2", etc appended to 

The MySQL ODBC driver always returns the *alias* name in both getColumnName()
and getColumnLabel(), with duplicates. recordset.columns.ElementNames has "1",
"2", etc appended for unicity. ODBC has the notion of column label (with
SQLColAttribute(..., SQL_DESC_LABEL,...)) and column "original" name (with
SQLColAttribute(..., SQL_DESC_NAME,...)), the LibreOffice SDBC<->ODBC driver
makes the difference, but the MySQL ODBC driver doesn't.

<span class="quote">> Is guess this is the case for HSQLDB.</span >

Well, no, it is not. Everything has the alias name. I tried (Tasks table from
wizard):

Sub Main
        Dim DBDocUI as Object
        on error resume next
        DBDocUI = ThisDatabaseDocument.currentController
        if not DBDocUI.isConnected then
                DBDocUI.connect
        end if

        dim s as Object
        s = DBDocUI.ActiveConnection.createStatement()
        dim r as Object
        rs = s.executeQuery("SELECT ""TaskID"" AS ""TID1"", ""TaskID"" AS
""TID2"" FROM ""Tasks""")
        MsgBox rs.metadata.getColumnName(1)
        MsgBox rs.metadata.getColumnLabel(1)
        XRay rs.columns.ElementNames
End Sub</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>